<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><link rel="stylesheet" type="text/css" href="style.css" /><script type="text/javascript" src="highlight.js"></script></head><body><pre><span class="hs-pragma">{-# LANGUAGE CPP #-}</span><span>
</span><span id="line-2"></span><span>
</span><span id="line-3"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-4"></span><span class="hs-comment">--</span><span>
</span><span id="line-5"></span><span class="hs-comment">-- Pretty-printing assembly language</span><span>
</span><span id="line-6"></span><span class="hs-comment">--</span><span>
</span><span id="line-7"></span><span class="hs-comment">-- (c) The University of Glasgow 1993-2005</span><span>
</span><span id="line-8"></span><span class="hs-comment">--</span><span>
</span><span id="line-9"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-10"></span><span>
</span><span id="line-11"></span><span class="hs-pragma">{-# OPTIONS_GHC -fno-warn-orphans #-}</span><span>
</span><span id="line-12"></span><span>
</span><span id="line-13"></span><span class="hs-keyword">module</span><span> </span><span class="hs-identifier">GHC.CmmToAsm.SPARC.Ppr</span><span> </span><span class="hs-special">(</span><span>
</span><span id="line-14"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprNatCmmDecl"><span class="hs-identifier">pprNatCmmDecl</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-15"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprBasicBlock"><span class="hs-identifier">pprBasicBlock</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-16"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprData"><span class="hs-identifier">pprData</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-17"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier">pprInstr</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-18"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormat"><span class="hs-identifier">pprFormat</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-19"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier">pprImm</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-20"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDataItem"><span class="hs-identifier">pprDataItem</span></a></span><span>
</span><span id="line-21"></span><span class="hs-special">)</span><span>
</span><span id="line-22"></span><span>
</span><span id="line-23"></span><span class="hs-keyword">where</span><span class="hs-cpp">

#include &quot;HsVersions.h&quot;
</span><span>
</span><span id="line-27"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Prelude.html"><span class="hs-identifier">GHC.Prelude</span></a></span><span>
</span><span id="line-28"></span><span>
</span><span id="line-29"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Regs.html"><span class="hs-identifier">GHC.CmmToAsm.SPARC.Regs</span></a></span><span>
</span><span id="line-30"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html"><span class="hs-identifier">GHC.CmmToAsm.SPARC.Instr</span></a></span><span>
</span><span id="line-31"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Cond.html"><span class="hs-identifier">GHC.CmmToAsm.SPARC.Cond</span></a></span><span>
</span><span id="line-32"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html"><span class="hs-identifier">GHC.CmmToAsm.SPARC.Imm</span></a></span><span>
</span><span id="line-33"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html"><span class="hs-identifier">GHC.CmmToAsm.SPARC.AddrMode</span></a></span><span>
</span><span id="line-34"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Base.html"><span class="hs-identifier">GHC.CmmToAsm.SPARC.Base</span></a></span><span>
</span><span id="line-35"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Instr.html"><span class="hs-identifier">GHC.CmmToAsm.Instr</span></a></span><span>
</span><span id="line-36"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html"><span class="hs-identifier">GHC.Platform.Reg</span></a></span><span>
</span><span id="line-37"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Format.html"><span class="hs-identifier">GHC.CmmToAsm.Format</span></a></span><span>
</span><span id="line-38"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Ppr.html"><span class="hs-identifier">GHC.CmmToAsm.Ppr</span></a></span><span>
</span><span id="line-39"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Config.html"><span class="hs-identifier">GHC.CmmToAsm.Config</span></a></span><span>
</span><span id="line-40"></span><span>
</span><span id="line-41"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.html"><span class="hs-identifier">GHC.Cmm</span></a></span><span> </span><span class="hs-keyword">hiding</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#topInfoTable"><span class="hs-identifier">topInfoTable</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-42"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.Ppr.html"><span class="hs-identifier">GHC.Cmm.Ppr</span></a></span><span class="hs-special">(</span><span class="hs-special">)</span><span> </span><span class="hs-comment">-- For Outputable instances</span><span>
</span><span id="line-43"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.BlockId.html"><span class="hs-identifier">GHC.Cmm.BlockId</span></a></span><span>
</span><span id="line-44"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.CLabel.html"><span class="hs-identifier">GHC.Cmm.CLabel</span></a></span><span>
</span><span id="line-45"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html"><span class="hs-identifier">GHC.Cmm.Dataflow.Label</span></a></span><span>
</span><span id="line-46"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html"><span class="hs-identifier">GHC.Cmm.Dataflow.Collections</span></a></span><span>
</span><span id="line-47"></span><span>
</span><span id="line-48"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Types.Unique.html"><span class="hs-identifier">GHC.Types.Unique</span></a></span><span> </span><span class="hs-special">(</span><span> </span><span class="annot"><a href="GHC.Types.Unique.html#pprUniqueAlways"><span class="hs-identifier">pprUniqueAlways</span></a></span><span> </span><span class="hs-special">)</span><span>
</span><span id="line-49"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html"><span class="hs-identifier">GHC.Utils.Outputable</span></a></span><span>
</span><span id="line-50"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#"><span class="hs-identifier">GHC.Platform</span></a></span><span>
</span><span id="line-51"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Data.FastString.html"><span class="hs-identifier">GHC.Data.FastString</span></a></span><span>
</span><span id="line-52"></span><span>
</span><span id="line-53"></span><span class="hs-comment">-- -----------------------------------------------------------------------------</span><span>
</span><span id="line-54"></span><span class="hs-comment">-- Printing this stuff out</span><span>
</span><span id="line-55"></span><span>
</span><span id="line-56"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprNatCmmDecl"><span class="hs-identifier hs-type">pprNatCmmDecl</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Config.html#NCGConfig"><span class="hs-identifier hs-type">NCGConfig</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Instr.html#NatCmmDecl"><span class="hs-identifier hs-type">NatCmmDecl</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.html#RawCmmStatics"><span class="hs-identifier hs-type">RawCmmStatics</span></a></span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#Instr"><span class="hs-identifier hs-type">Instr</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-57"></span><span id="pprNatCmmDecl"><span class="annot"><span class="annottext">pprNatCmmDecl :: NCGConfig -&gt; NatCmmDecl RawCmmStatics Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprNatCmmDecl"><span class="hs-identifier hs-var hs-var">pprNatCmmDecl</span></a></span></span><span> </span><span id="local-6989586621681019435"><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019435"><span class="hs-identifier hs-var">config</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#CmmData"><span class="hs-identifier hs-type">CmmData</span></a></span><span> </span><span id="local-6989586621681019433"><span class="annot"><span class="annottext">Section
</span><a href="#local-6989586621681019433"><span class="hs-identifier hs-var">section</span></a></span></span><span> </span><span id="local-6989586621681019432"><span class="annot"><span class="annottext">RawCmmStatics
</span><a href="#local-6989586621681019432"><span class="hs-identifier hs-var">dats</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span>
</span><span id="line-58"></span><span>  </span><span class="annot"><span class="annottext">NCGConfig -&gt; Section -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprSectionAlign"><span class="hs-identifier hs-var">pprSectionAlign</span></a></span><span> </span><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019435"><span class="hs-identifier hs-var">config</span></a></span><span> </span><span class="annot"><span class="annottext">Section
</span><a href="#local-6989586621681019433"><span class="hs-identifier hs-var">section</span></a></span><span>
</span><span id="line-59"></span><span>  </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span> </span><span class="annot"><span class="annottext">Platform -&gt; RawCmmStatics -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDatas"><span class="hs-identifier hs-var">pprDatas</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">NCGConfig -&gt; Platform
</span><a href="GHC.CmmToAsm.Config.html#ncgPlatform"><span class="hs-identifier hs-var hs-var">ncgPlatform</span></a></span><span> </span><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019435"><span class="hs-identifier hs-var">config</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">RawCmmStatics
</span><a href="#local-6989586621681019432"><span class="hs-identifier hs-var">dats</span></a></span><span>
</span><span id="line-60"></span><span>
</span><span id="line-61"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprNatCmmDecl"><span class="hs-identifier hs-var">pprNatCmmDecl</span></a></span><span> </span><span id="local-6989586621681019427"><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019427"><span class="hs-identifier hs-var">config</span></a></span></span><span> </span><span id="local-6989586621681019426"><span class="annot"><span class="annottext">proc :: NatCmmDecl RawCmmStatics Instr
</span><a href="#local-6989586621681019426"><span class="hs-identifier hs-var">proc</span></a></span></span><span class="hs-glyph">@</span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#CmmProc"><span class="hs-identifier hs-type">CmmProc</span></a></span><span> </span><span id="local-6989586621681019424"><span class="annot"><span class="annottext">LabelMap RawCmmStatics
</span><a href="#local-6989586621681019424"><span class="hs-identifier hs-var">top_info</span></a></span></span><span> </span><span id="local-6989586621681019423"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019423"><span class="hs-identifier hs-var">lbl</span></a></span></span><span> </span><span class="annot"><span class="annottext">[GlobalReg]
</span><span class="hs-identifier">_</span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#ListGraph"><span class="hs-identifier hs-type">ListGraph</span></a></span><span> </span><span id="local-6989586621681019421"><span class="annot"><span class="annottext">[GenBasicBlock Instr]
</span><a href="#local-6989586621681019421"><span class="hs-identifier hs-var">blocks</span></a></span></span><span class="hs-special">)</span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span>
</span><span id="line-62"></span><span>  </span><span class="hs-keyword">let</span><span> </span><span id="local-6989586621681019420"><span class="annot"><span class="annottext">platform :: Platform
</span><a href="#local-6989586621681019420"><span class="hs-identifier hs-var hs-var">platform</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">NCGConfig -&gt; Platform
</span><a href="GHC.CmmToAsm.Config.html#ncgPlatform"><span class="hs-identifier hs-var hs-var">ncgPlatform</span></a></span><span> </span><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019427"><span class="hs-identifier hs-var">config</span></a></span><span> </span><span class="hs-keyword">in</span><span>
</span><span id="line-63"></span><span>  </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">NatCmmDecl RawCmmStatics Instr -&gt; Maybe RawCmmStatics
forall a i b. GenCmmDecl a (LabelMap i) (ListGraph b) -&gt; Maybe i
</span><a href="GHC.CmmToAsm.Instr.html#topInfoTable"><span class="hs-identifier hs-var">topInfoTable</span></a></span><span> </span><span class="annot"><span class="annottext">NatCmmDecl RawCmmStatics Instr
</span><a href="#local-6989586621681019426"><span class="hs-identifier hs-var">proc</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-64"></span><span>    </span><span class="annot"><span class="annottext">Maybe RawCmmStatics
</span><a href="../../base/src/GHC.Maybe.html#Nothing"><span class="hs-identifier hs-var">Nothing</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span>
</span><span id="line-65"></span><span>        </span><span class="hs-comment">-- special case for code without info table:</span><span>
</span><span id="line-66"></span><span>        </span><span class="annot"><span class="annottext">NCGConfig -&gt; Section -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprSectionAlign"><span class="hs-identifier hs-var">pprSectionAlign</span></a></span><span> </span><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019427"><span class="hs-identifier hs-var">config</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">SectionType -&gt; CLabel -&gt; Section
</span><a href="GHC.Cmm.html#Section"><span class="hs-identifier hs-var">Section</span></a></span><span> </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#Text"><span class="hs-identifier hs-var">Text</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019423"><span class="hs-identifier hs-var">lbl</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-67"></span><span>        </span><span class="annot"><span class="annottext">Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprLabel"><span class="hs-identifier hs-var">pprLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019420"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019423"><span class="hs-identifier hs-var">lbl</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span> </span><span class="hs-comment">-- blocks guaranteed not null, so label needed</span><span>
</span><span id="line-68"></span><span>        </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#vcat"><span class="hs-identifier hs-var">vcat</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(GenBasicBlock Instr -&gt; SDoc) -&gt; [GenBasicBlock Instr] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Platform -&gt; LabelMap RawCmmStatics -&gt; GenBasicBlock Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprBasicBlock"><span class="hs-identifier hs-var">pprBasicBlock</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019420"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap RawCmmStatics
</span><a href="#local-6989586621681019424"><span class="hs-identifier hs-var">top_info</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">[GenBasicBlock Instr]
</span><a href="#local-6989586621681019421"><span class="hs-identifier hs-var">blocks</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-69"></span><span>
</span><span id="line-70"></span><span>    </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-type">Just</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#CmmStaticsRaw"><span class="hs-identifier hs-type">CmmStaticsRaw</span></a></span><span> </span><span id="local-6989586621681019413"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019413"><span class="hs-identifier hs-var">info_lbl</span></a></span></span><span> </span><span class="annot"><span class="annottext">[CmmStatic]
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">-&gt;</span><span>
</span><span id="line-71"></span><span>      </span><span class="hs-special">(</span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Platform -&gt; Bool
</span><a href="../../ghc-boot/src/GHC.Platform.html#platformHasSubsectionsViaSymbols"><span class="hs-identifier hs-var hs-var">platformHasSubsectionsViaSymbols</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019420"><span class="hs-identifier hs-var">platform</span></a></span><span>
</span><span id="line-72"></span><span>          </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">NCGConfig -&gt; Section -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprSectionAlign"><span class="hs-identifier hs-var">pprSectionAlign</span></a></span><span> </span><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019427"><span class="hs-identifier hs-var">config</span></a></span><span> </span><span class="annot"><span class="annottext">Section
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#dspSection"><span class="hs-identifier hs-var">dspSection</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-73"></span><span>               </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">CLabel -&gt; CLabel
</span><a href="GHC.Cmm.CLabel.html#mkDeadStripPreventer"><span class="hs-identifier hs-var">mkDeadStripPreventer</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019413"><span class="hs-identifier hs-var">info_lbl</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">':'</span></span><span>
</span><span id="line-74"></span><span>          </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-75"></span><span>      </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#vcat"><span class="hs-identifier hs-var">vcat</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(GenBasicBlock Instr -&gt; SDoc) -&gt; [GenBasicBlock Instr] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Platform -&gt; LabelMap RawCmmStatics -&gt; GenBasicBlock Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprBasicBlock"><span class="hs-identifier hs-var">pprBasicBlock</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019420"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap RawCmmStatics
</span><a href="#local-6989586621681019424"><span class="hs-identifier hs-var">top_info</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">[GenBasicBlock Instr]
</span><a href="#local-6989586621681019421"><span class="hs-identifier hs-var">blocks</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-76"></span><span>      </span><span class="hs-comment">-- above: Even the first block gets a label, because with branch-chain</span><span>
</span><span id="line-77"></span><span>      </span><span class="hs-comment">-- elimination, it might be the target of a goto.</span><span>
</span><span id="line-78"></span><span>      </span><span class="hs-special">(</span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Platform -&gt; Bool
</span><a href="../../ghc-boot/src/GHC.Platform.html#platformHasSubsectionsViaSymbols"><span class="hs-identifier hs-var hs-var">platformHasSubsectionsViaSymbols</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019420"><span class="hs-identifier hs-var">platform</span></a></span><span>
</span><span id="line-79"></span><span>       </span><span class="hs-keyword">then</span><span>
</span><span id="line-80"></span><span>       </span><span class="hs-comment">-- See Note [Subsections Via Symbols] in X86/Ppr.hs</span><span>
</span><span id="line-81"></span><span>                </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.long &quot;</span></span><span>
</span><span id="line-82"></span><span>            </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%2B%3E"><span class="hs-operator hs-var">&lt;+&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019413"><span class="hs-identifier hs-var">info_lbl</span></a></span><span>
</span><span id="line-83"></span><span>            </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%2B%3E"><span class="hs-operator hs-var">&lt;+&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'-'</span></span><span>
</span><span id="line-84"></span><span>            </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%2B%3E"><span class="hs-operator hs-var">&lt;+&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">CLabel -&gt; CLabel
</span><a href="GHC.Cmm.CLabel.html#mkDeadStripPreventer"><span class="hs-identifier hs-var">mkDeadStripPreventer</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019413"><span class="hs-identifier hs-var">info_lbl</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-85"></span><span>       </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-86"></span><span>
</span><span id="line-87"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#dspSection"><span class="hs-identifier hs-type">dspSection</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Cmm.html#Section"><span class="hs-identifier hs-type">Section</span></a></span><span>
</span><span id="line-88"></span><span id="dspSection"><span class="annot"><span class="annottext">dspSection :: Section
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#dspSection"><span class="hs-identifier hs-var hs-var">dspSection</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">SectionType -&gt; CLabel -&gt; Section
</span><a href="GHC.Cmm.html#Section"><span class="hs-identifier hs-var">Section</span></a></span><span> </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#Text"><span class="hs-identifier hs-var">Text</span></a></span><span> </span><span class="annot"><span class="annottext">(CLabel -&gt; Section) -&gt; CLabel -&gt; Section
forall a b. (a -&gt; b) -&gt; a -&gt; b
</span><a href="../../base/src/GHC.Base.html#%24"><span class="hs-operator hs-var">$</span></a></span><span>
</span><span id="line-89"></span><span>    </span><span class="annot"><span class="annottext">String -&gt; CLabel
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;subsections-via-symbols doesn't combine with split-sections&quot;</span></span><span>
</span><span id="line-90"></span><span>
</span><span id="line-91"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprBasicBlock"><span class="hs-identifier hs-type">pprBasicBlock</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#Platform"><span class="hs-identifier hs-type">Platform</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.html#RawCmmStatics"><span class="hs-identifier hs-type">RawCmmStatics</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Instr.html#NatBasicBlock"><span class="hs-identifier hs-type">NatBasicBlock</span></a></span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#Instr"><span class="hs-identifier hs-type">Instr</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-92"></span><span id="pprBasicBlock"><span class="annot"><span class="annottext">pprBasicBlock :: Platform -&gt; LabelMap RawCmmStatics -&gt; GenBasicBlock Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprBasicBlock"><span class="hs-identifier hs-var hs-var">pprBasicBlock</span></a></span></span><span> </span><span id="local-6989586621681019401"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019401"><span class="hs-identifier hs-var">platform</span></a></span></span><span> </span><span id="local-6989586621681019400"><span class="annot"><span class="annottext">LabelMap RawCmmStatics
</span><a href="#local-6989586621681019400"><span class="hs-identifier hs-var">info_env</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#BasicBlock"><span class="hs-identifier hs-type">BasicBlock</span></a></span><span> </span><span id="local-6989586621681019398"><span class="annot"><span class="annottext">BlockId
</span><a href="#local-6989586621681019398"><span class="hs-identifier hs-var">blockid</span></a></span></span><span> </span><span id="local-6989586621681019397"><span class="annot"><span class="annottext">[Instr]
</span><a href="#local-6989586621681019397"><span class="hs-identifier hs-var">instrs</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-93"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="#local-6989586621681019396"><span class="hs-identifier hs-var">maybe_infotable</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-94"></span><span>    </span><span class="annot"><span class="annottext">Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprLabel"><span class="hs-identifier hs-var">pprLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019401"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">BlockId -&gt; CLabel
</span><a href="GHC.Cmm.BlockId.html#blockLbl"><span class="hs-identifier hs-var">blockLbl</span></a></span><span> </span><span class="annot"><span class="annottext">BlockId
</span><a href="#local-6989586621681019398"><span class="hs-identifier hs-var">blockid</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-95"></span><span>    </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#vcat"><span class="hs-identifier hs-var">vcat</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(Instr -&gt; SDoc) -&gt; [Instr] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="annot"><span class="annottext">Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="annot"><span class="annottext">[Instr]
</span><a href="#local-6989586621681019397"><span class="hs-identifier hs-var">instrs</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-96"></span><span>  </span><span class="hs-keyword">where</span><span>
</span><span id="line-97"></span><span>    </span><span id="local-6989586621681019396"><span class="annot"><span class="annottext">maybe_infotable :: SDoc
</span><a href="#local-6989586621681019396"><span class="hs-identifier hs-var hs-var">maybe_infotable</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; LabelMap RawCmmStatics -&gt; Maybe RawCmmStatics
forall (map :: * -&gt; *) a.
IsMap map =&gt;
KeyOf map -&gt; map a -&gt; Maybe a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapLookup"><span class="hs-identifier hs-var">mapLookup</span></a></span><span> </span><span class="annot"><span class="annottext">KeyOf LabelMap
BlockId
</span><a href="#local-6989586621681019398"><span class="hs-identifier hs-var">blockid</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap RawCmmStatics
</span><a href="#local-6989586621681019400"><span class="hs-identifier hs-var">info_env</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-98"></span><span>       </span><span class="annot"><span class="annottext">Maybe RawCmmStatics
</span><a href="../../base/src/GHC.Maybe.html#Nothing"><span class="hs-identifier hs-var">Nothing</span></a></span><span>   </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-99"></span><span>       </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-type">Just</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#CmmStaticsRaw"><span class="hs-identifier hs-type">CmmStaticsRaw</span></a></span><span> </span><span id="local-6989586621681019391"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019391"><span class="hs-identifier hs-var">info_lbl</span></a></span></span><span> </span><span id="local-6989586621681019390"><span class="annot"><span class="annottext">[CmmStatic]
</span><a href="#local-6989586621681019390"><span class="hs-identifier hs-var">info</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">-&gt;</span><span>
</span><span id="line-100"></span><span>           </span><span class="annot"><span class="annottext">SectionType -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAlignForSection"><span class="hs-identifier hs-var">pprAlignForSection</span></a></span><span> </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#Text"><span class="hs-identifier hs-var">Text</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-101"></span><span>           </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#vcat"><span class="hs-identifier hs-var">vcat</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(CmmStatic -&gt; SDoc) -&gt; [CmmStatic] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Platform -&gt; CmmStatic -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprData"><span class="hs-identifier hs-var">pprData</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019401"><span class="hs-identifier hs-var">platform</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">[CmmStatic]
</span><a href="#local-6989586621681019390"><span class="hs-identifier hs-var">info</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-102"></span><span>           </span><span class="annot"><span class="annottext">Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprLabel"><span class="hs-identifier hs-var">pprLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019401"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019391"><span class="hs-identifier hs-var">info_lbl</span></a></span><span>
</span><span id="line-103"></span><span>
</span><span id="line-104"></span><span>
</span><span id="line-105"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDatas"><span class="hs-identifier hs-type">pprDatas</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#Platform"><span class="hs-identifier hs-type">Platform</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.html#RawCmmStatics"><span class="hs-identifier hs-type">RawCmmStatics</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-106"></span><span class="hs-comment">-- See note [emit-time elimination of static indirections] in &quot;GHC.Cmm.CLabel&quot;.</span><span>
</span><span id="line-107"></span><span id="pprDatas"><span class="annot"><span class="annottext">pprDatas :: Platform -&gt; RawCmmStatics -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDatas"><span class="hs-identifier hs-var hs-var">pprDatas</span></a></span></span><span> </span><span id="local-6989586621681019388"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019388"><span class="hs-identifier hs-var">_platform</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#CmmStaticsRaw"><span class="hs-identifier hs-type">CmmStaticsRaw</span></a></span><span> </span><span id="local-6989586621681019387"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019387"><span class="hs-identifier hs-var">alias</span></a></span></span><span> </span><span class="hs-special">[</span><span class="annot"><a href="GHC.Cmm.html#CmmStaticLit"><span class="hs-identifier hs-type">CmmStaticLit</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Expr.html#CmmLabel"><span class="hs-identifier hs-type">CmmLabel</span></a></span><span> </span><span id="local-6989586621681019384"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019384"><span class="hs-identifier hs-var">lbl</span></a></span></span><span class="hs-special">)</span><span class="hs-special">,</span><span> </span><span class="annot"><a href="GHC.Cmm.html#CmmStaticLit"><span class="hs-identifier hs-type">CmmStaticLit</span></a></span><span> </span><span id="local-6989586621681019383"><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019383"><span class="hs-identifier hs-var">ind</span></a></span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">CmmStatic
</span><span class="hs-identifier">_</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">CmmStatic
</span><span class="hs-identifier">_</span></span><span class="hs-special">]</span><span class="hs-special">)</span><span>
</span><span id="line-108"></span><span>  </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019384"><span class="hs-identifier hs-var">lbl</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; CLabel -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="GHC.Cmm.CLabel.html#mkIndStaticInfoLabel"><span class="hs-identifier hs-var">mkIndStaticInfoLabel</span></a></span><span>
</span><span id="line-109"></span><span>  </span><span class="hs-special">,</span><span> </span><span class="hs-keyword">let</span><span> </span><span id="local-6989586621681019381"><span class="annot"><span class="annottext">labelInd :: CmmLit -&gt; Maybe CLabel
</span><a href="#local-6989586621681019381"><span class="hs-identifier hs-var hs-var">labelInd</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Expr.html#CmmLabelOff"><span class="hs-identifier hs-type">CmmLabelOff</span></a></span><span> </span><span id="local-6989586621681019379"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019379"><span class="hs-identifier hs-var">l</span></a></span></span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; Maybe CLabel
forall a. a -&gt; Maybe a
</span><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-var">Just</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019379"><span class="hs-identifier hs-var">l</span></a></span><span>
</span><span id="line-110"></span><span>        </span><span class="annot"><a href="#local-6989586621681019381"><span class="hs-identifier hs-var">labelInd</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Expr.html#CmmLabel"><span class="hs-identifier hs-type">CmmLabel</span></a></span><span> </span><span id="local-6989586621681019378"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019378"><span class="hs-identifier hs-var">l</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; Maybe CLabel
forall a. a -&gt; Maybe a
</span><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-var">Just</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019378"><span class="hs-identifier hs-var">l</span></a></span><span>
</span><span id="line-111"></span><span>        </span><span class="annot"><a href="#local-6989586621681019381"><span class="hs-identifier hs-var">labelInd</span></a></span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><span class="hs-identifier">_</span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Maybe CLabel
forall a. Maybe a
</span><a href="../../base/src/GHC.Maybe.html#Nothing"><span class="hs-identifier hs-var">Nothing</span></a></span><span>
</span><span id="line-112"></span><span>  </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-type">Just</span></a></span><span> </span><span id="local-6989586621681019377"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019377"><span class="hs-identifier hs-var">ind'</span></a></span></span><span> </span><span class="hs-glyph">&lt;-</span><span> </span><span class="annot"><span class="annottext">CmmLit -&gt; Maybe CLabel
</span><a href="#local-6989586621681019381"><span class="hs-identifier hs-var">labelInd</span></a></span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019383"><span class="hs-identifier hs-var">ind</span></a></span><span>
</span><span id="line-113"></span><span>  </span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019387"><span class="hs-identifier hs-var">alias</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; CLabel -&gt; Bool
</span><a href="GHC.Cmm.CLabel.html#mayRedirectTo"><span class="hs-operator hs-var">`mayRedirectTo`</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019377"><span class="hs-identifier hs-var">ind'</span></a></span><span>
</span><span id="line-114"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprGloblDecl"><span class="hs-identifier hs-var">pprGloblDecl</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019387"><span class="hs-identifier hs-var">alias</span></a></span><span>
</span><span id="line-115"></span><span>    </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.equiv&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%2B%3E"><span class="hs-operator hs-var">&lt;+&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019387"><span class="hs-identifier hs-var">alias</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">CmmLit -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">CLabel -&gt; CmmLit
</span><a href="GHC.Cmm.Expr.html#CmmLabel"><span class="hs-identifier hs-var">CmmLabel</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019377"><span class="hs-identifier hs-var">ind'</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-116"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDatas"><span class="hs-identifier hs-var">pprDatas</span></a></span><span> </span><span id="local-6989586621681019373"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019373"><span class="hs-identifier hs-var">platform</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#CmmStaticsRaw"><span class="hs-identifier hs-type">CmmStaticsRaw</span></a></span><span> </span><span id="local-6989586621681019372"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019372"><span class="hs-identifier hs-var">lbl</span></a></span></span><span> </span><span id="local-6989586621681019371"><span class="annot"><span class="annottext">[CmmStatic]
</span><a href="#local-6989586621681019371"><span class="hs-identifier hs-var">dats</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#vcat"><span class="hs-identifier hs-var">vcat</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprLabel"><span class="hs-identifier hs-var">pprLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019373"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019372"><span class="hs-identifier hs-var">lbl</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; [SDoc] -&gt; [SDoc]
forall a. a -&gt; [a] -&gt; [a]
</span><span class="hs-glyph hs-var">:</span></span><span> </span><span class="annot"><span class="annottext">(CmmStatic -&gt; SDoc) -&gt; [CmmStatic] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Platform -&gt; CmmStatic -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprData"><span class="hs-identifier hs-var">pprData</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019373"><span class="hs-identifier hs-var">platform</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">[CmmStatic]
</span><a href="#local-6989586621681019371"><span class="hs-identifier hs-var">dats</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-117"></span><span>
</span><span id="line-118"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprData"><span class="hs-identifier hs-type">pprData</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#Platform"><span class="hs-identifier hs-type">Platform</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.html#CmmStatic"><span class="hs-identifier hs-type">CmmStatic</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-119"></span><span id="pprData"><span class="annot"><span class="annottext">pprData :: Platform -&gt; CmmStatic -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprData"><span class="hs-identifier hs-var hs-var">pprData</span></a></span></span><span> </span><span id="local-6989586621681019370"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019370"><span class="hs-identifier hs-var">platform</span></a></span></span><span> </span><span id="local-6989586621681019369"><span class="annot"><span class="annottext">CmmStatic
</span><a href="#local-6989586621681019369"><span class="hs-identifier hs-var">d</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">CmmStatic
</span><a href="#local-6989586621681019369"><span class="hs-identifier hs-var">d</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-120"></span><span>   </span><span class="annot"><a href="GHC.Cmm.html#CmmString"><span class="hs-identifier hs-type">CmmString</span></a></span><span> </span><span id="local-6989586621681019367"><span class="annot"><span class="annottext">ByteString
</span><a href="#local-6989586621681019367"><span class="hs-identifier hs-var">str</span></a></span></span><span>          </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">ByteString -&gt; SDoc
</span><a href="GHC.CmmToAsm.Ppr.html#pprString"><span class="hs-identifier hs-var">pprString</span></a></span><span> </span><span class="annot"><span class="annottext">ByteString
</span><a href="#local-6989586621681019367"><span class="hs-identifier hs-var">str</span></a></span><span>
</span><span id="line-121"></span><span>   </span><span class="annot"><a href="GHC.Cmm.html#CmmFileEmbed"><span class="hs-identifier hs-type">CmmFileEmbed</span></a></span><span> </span><span id="local-6989586621681019364"><span class="annot"><span class="annottext">String
</span><a href="#local-6989586621681019364"><span class="hs-identifier hs-var">path</span></a></span></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.CmmToAsm.Ppr.html#pprFileEmbed"><span class="hs-identifier hs-var">pprFileEmbed</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><a href="#local-6989586621681019364"><span class="hs-identifier hs-var">path</span></a></span><span>
</span><span id="line-122"></span><span>   </span><span class="annot"><a href="GHC.Cmm.html#CmmUninitialised"><span class="hs-identifier hs-type">CmmUninitialised</span></a></span><span> </span><span id="local-6989586621681019361"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019361"><span class="hs-identifier hs-var">bytes</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.skip &quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#int"><span class="hs-identifier hs-var">int</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019361"><span class="hs-identifier hs-var">bytes</span></a></span><span>
</span><span id="line-123"></span><span>   </span><span class="annot"><a href="GHC.Cmm.html#CmmStaticLit"><span class="hs-identifier hs-type">CmmStaticLit</span></a></span><span> </span><span id="local-6989586621681019359"><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019359"><span class="hs-identifier hs-var">lit</span></a></span></span><span>       </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Platform -&gt; CmmLit -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDataItem"><span class="hs-identifier hs-var">pprDataItem</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019370"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019359"><span class="hs-identifier hs-var">lit</span></a></span><span>
</span><span id="line-124"></span><span>
</span><span id="line-125"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprGloblDecl"><span class="hs-identifier hs-type">pprGloblDecl</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Cmm.CLabel.html#CLabel"><span class="hs-identifier hs-type">CLabel</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-126"></span><span id="pprGloblDecl"><span class="annot"><span class="annottext">pprGloblDecl :: CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprGloblDecl"><span class="hs-identifier hs-var hs-var">pprGloblDecl</span></a></span></span><span> </span><span id="local-6989586621681019358"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019358"><span class="hs-identifier hs-var">lbl</span></a></span></span><span>
</span><span id="line-127"></span><span>  </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">CLabel -&gt; Bool
</span><a href="GHC.Cmm.CLabel.html#externallyVisibleCLabel"><span class="hs-identifier hs-var">externallyVisibleCLabel</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019358"><span class="hs-identifier hs-var">lbl</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-128"></span><span>  </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.global &quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019358"><span class="hs-identifier hs-var">lbl</span></a></span><span>
</span><span id="line-129"></span><span>
</span><span id="line-130"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprTypeAndSizeDecl"><span class="hs-identifier hs-type">pprTypeAndSizeDecl</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#Platform"><span class="hs-identifier hs-type">Platform</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.CLabel.html#CLabel"><span class="hs-identifier hs-type">CLabel</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-131"></span><span id="pprTypeAndSizeDecl"><span class="annot"><span class="annottext">pprTypeAndSizeDecl :: Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprTypeAndSizeDecl"><span class="hs-identifier hs-var hs-var">pprTypeAndSizeDecl</span></a></span></span><span> </span><span id="local-6989586621681019354"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019354"><span class="hs-identifier hs-var">platform</span></a></span></span><span> </span><span id="local-6989586621681019353"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019353"><span class="hs-identifier hs-var">lbl</span></a></span></span><span>
</span><span id="line-132"></span><span>    </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Platform -&gt; OS
</span><a href="../../ghc-boot/src/GHC.Platform.html#platformOS"><span class="hs-identifier hs-var">platformOS</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019354"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">OS -&gt; OS -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">OS
</span><a href="../../ghc-boot/src/GHC.Platform.html#OSLinux"><span class="hs-identifier hs-var">OSLinux</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; Bool
</span><a href="GHC.Cmm.CLabel.html#externallyVisibleCLabel"><span class="hs-identifier hs-var">externallyVisibleCLabel</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019353"><span class="hs-identifier hs-var">lbl</span></a></span><span>
</span><span id="line-133"></span><span>      </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.type &quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019353"><span class="hs-identifier hs-var">lbl</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;, @object&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-134"></span><span>      </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-135"></span><span>
</span><span id="line-136"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprLabel"><span class="hs-identifier hs-type">pprLabel</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#Platform"><span class="hs-identifier hs-type">Platform</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.CLabel.html#CLabel"><span class="hs-identifier hs-type">CLabel</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-137"></span><span id="pprLabel"><span class="annot"><span class="annottext">pprLabel :: Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprLabel"><span class="hs-identifier hs-var hs-var">pprLabel</span></a></span></span><span> </span><span id="local-6989586621681019347"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019347"><span class="hs-identifier hs-var">platform</span></a></span></span><span> </span><span id="local-6989586621681019346"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019346"><span class="hs-identifier hs-var">lbl</span></a></span></span><span> </span><span class="hs-glyph">=</span><span>
</span><span id="line-138"></span><span>   </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprGloblDecl"><span class="hs-identifier hs-var">pprGloblDecl</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019346"><span class="hs-identifier hs-var">lbl</span></a></span><span>
</span><span id="line-139"></span><span>   </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span> </span><span class="annot"><span class="annottext">Platform -&gt; CLabel -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprTypeAndSizeDecl"><span class="hs-identifier hs-var">pprTypeAndSizeDecl</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019347"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019346"><span class="hs-identifier hs-var">lbl</span></a></span><span>
</span><span id="line-140"></span><span>   </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019346"><span class="hs-identifier hs-var">lbl</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">':'</span></span><span class="hs-special">)</span><span>
</span><span id="line-141"></span><span>
</span><span id="line-142"></span><span class="hs-comment">-- -----------------------------------------------------------------------------</span><span>
</span><span id="line-143"></span><span class="hs-comment">-- pprInstr: print an 'Instr'</span><span>
</span><span id="line-144"></span><span>
</span><span id="line-145"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621681019343"><span class="annot"><a href="GHC.Utils.Outputable.html#Outputable"><span class="hs-identifier hs-type">Outputable</span></a></span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#Instr"><span class="hs-identifier hs-type">Instr</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-146"></span><span>    </span><span id="local-6989586621681019341"><span class="annot"><span class="annottext">ppr :: Instr -&gt; SDoc
</span><a href="#local-6989586621681019341"><span class="hs-identifier hs-var hs-var hs-var hs-var">ppr</span></a></span></span><span> </span><span id="local-6989586621681019340"><span class="annot"><span class="annottext">Instr
</span><a href="#local-6989586621681019340"><span class="hs-identifier hs-var">instr</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="annot"><span class="annottext">Instr
</span><a href="#local-6989586621681019340"><span class="hs-identifier hs-var">instr</span></a></span><span>
</span><span id="line-147"></span><span>
</span><span id="line-148"></span><span>
</span><span id="line-149"></span><span class="hs-comment">-- | Pretty print a register.</span><span>
</span><span id="line-150"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-type">pprReg</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-151"></span><span id="pprReg"><span class="annot"><span class="annottext">pprReg :: Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var hs-var">pprReg</span></a></span></span><span> </span><span id="local-6989586621681019338"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019338"><span class="hs-identifier hs-var">reg</span></a></span></span><span>
</span><span id="line-152"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019338"><span class="hs-identifier hs-var">reg</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-153"></span><span>        </span><span class="annot"><a href="GHC.Platform.Reg.html#RegVirtual"><span class="hs-identifier hs-type">RegVirtual</span></a></span><span> </span><span id="local-6989586621681019336"><span class="annot"><span class="annottext">VirtualReg
</span><a href="#local-6989586621681019336"><span class="hs-identifier hs-var">vr</span></a></span></span><span>
</span><span id="line-154"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">VirtualReg
</span><a href="#local-6989586621681019336"><span class="hs-identifier hs-var">vr</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-155"></span><span>                </span><span class="annot"><a href="GHC.Platform.Reg.html#VirtualRegI"><span class="hs-identifier hs-type">VirtualRegI</span></a></span><span>   </span><span id="local-6989586621681019334"><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019334"><span class="hs-identifier hs-var">u</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%vI_&quot;</span></span><span>   </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Unique -&gt; SDoc
</span><a href="GHC.Types.Unique.html#pprUniqueAlways"><span class="hs-identifier hs-var">pprUniqueAlways</span></a></span><span> </span><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019334"><span class="hs-identifier hs-var">u</span></a></span><span>
</span><span id="line-156"></span><span>                </span><span class="annot"><a href="GHC.Platform.Reg.html#VirtualRegHi"><span class="hs-identifier hs-type">VirtualRegHi</span></a></span><span>  </span><span id="local-6989586621681019332"><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019332"><span class="hs-identifier hs-var">u</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%vHi_&quot;</span></span><span>  </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Unique -&gt; SDoc
</span><a href="GHC.Types.Unique.html#pprUniqueAlways"><span class="hs-identifier hs-var">pprUniqueAlways</span></a></span><span> </span><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019332"><span class="hs-identifier hs-var">u</span></a></span><span>
</span><span id="line-157"></span><span>                </span><span class="annot"><a href="GHC.Platform.Reg.html#VirtualRegF"><span class="hs-identifier hs-type">VirtualRegF</span></a></span><span>   </span><span id="local-6989586621681019330"><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019330"><span class="hs-identifier hs-var">u</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%vF_&quot;</span></span><span>   </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Unique -&gt; SDoc
</span><a href="GHC.Types.Unique.html#pprUniqueAlways"><span class="hs-identifier hs-var">pprUniqueAlways</span></a></span><span> </span><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019330"><span class="hs-identifier hs-var">u</span></a></span><span>
</span><span id="line-158"></span><span>                </span><span class="annot"><a href="GHC.Platform.Reg.html#VirtualRegD"><span class="hs-identifier hs-type">VirtualRegD</span></a></span><span>   </span><span id="local-6989586621681019328"><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019328"><span class="hs-identifier hs-var">u</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%vD_&quot;</span></span><span>   </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Unique -&gt; SDoc
</span><a href="GHC.Types.Unique.html#pprUniqueAlways"><span class="hs-identifier hs-var">pprUniqueAlways</span></a></span><span> </span><span class="annot"><span class="annottext">Unique
</span><a href="#local-6989586621681019328"><span class="hs-identifier hs-var">u</span></a></span><span>
</span><span id="line-159"></span><span>
</span><span id="line-160"></span><span>
</span><span id="line-161"></span><span>        </span><span class="annot"><a href="GHC.Platform.Reg.html#RegReal"><span class="hs-identifier hs-type">RegReal</span></a></span><span> </span><span id="local-6989586621681019326"><span class="annot"><span class="annottext">RealReg
</span><a href="#local-6989586621681019326"><span class="hs-identifier hs-var">rr</span></a></span></span><span>
</span><span id="line-162"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">RealReg
</span><a href="#local-6989586621681019326"><span class="hs-identifier hs-var">rr</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-163"></span><span>                </span><span class="annot"><a href="GHC.Platform.Reg.html#RealRegSingle"><span class="hs-identifier hs-type">RealRegSingle</span></a></span><span> </span><span id="local-6989586621681019324"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019324"><span class="hs-identifier hs-var">r1</span></a></span></span><span>
</span><span id="line-164"></span><span>                 </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg_ofRegNo"><span class="hs-identifier hs-var">pprReg_ofRegNo</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019324"><span class="hs-identifier hs-var">r1</span></a></span><span>
</span><span id="line-165"></span><span>
</span><span id="line-166"></span><span>                </span><span class="annot"><a href="GHC.Platform.Reg.html#RealRegPair"><span class="hs-identifier hs-type">RealRegPair</span></a></span><span> </span><span id="local-6989586621681019321"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019321"><span class="hs-identifier hs-var">r1</span></a></span></span><span> </span><span id="local-6989586621681019320"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019320"><span class="hs-identifier hs-var">r2</span></a></span></span><span>
</span><span id="line-167"></span><span>                 </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;(&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg_ofRegNo"><span class="hs-identifier hs-var">pprReg_ofRegNo</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019321"><span class="hs-identifier hs-var">r1</span></a></span><span>
</span><span id="line-168"></span><span>                 </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#vbar"><span class="hs-identifier hs-var">vbar</span></a></span><span>     </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg_ofRegNo"><span class="hs-identifier hs-var">pprReg_ofRegNo</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019320"><span class="hs-identifier hs-var">r2</span></a></span><span>
</span><span id="line-169"></span><span>                 </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;)&quot;</span></span><span>
</span><span id="line-170"></span><span>
</span><span id="line-171"></span><span>
</span><span id="line-172"></span><span>
</span><span id="line-173"></span><span class="hs-comment">-- | Pretty print a register name, based on this register number.</span><span>
</span><span id="line-174"></span><span class="hs-comment">--   The definition has been unfolded so we get a jump-table in the</span><span>
</span><span id="line-175"></span><span class="hs-comment">--   object code. This function is called quite a lot when emitting</span><span>
</span><span id="line-176"></span><span class="hs-comment">--   the asm file..</span><span>
</span><span id="line-177"></span><span class="hs-comment">--</span><span>
</span><span id="line-178"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg_ofRegNo"><span class="hs-identifier hs-type">pprReg_ofRegNo</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><span class="hs-identifier hs-type">Int</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-179"></span><span id="pprReg_ofRegNo"><span class="annot"><span class="annottext">pprReg_ofRegNo :: Int -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg_ofRegNo"><span class="hs-identifier hs-var hs-var">pprReg_ofRegNo</span></a></span></span><span> </span><span id="local-6989586621681019318"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019318"><span class="hs-identifier hs-var">i</span></a></span></span><span>
</span><span id="line-180"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span>
</span><span id="line-181"></span><span>    </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019318"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="hs-keyword">of</span><span> </span><span class="hs-special">{</span><span>
</span><span id="line-182"></span><span>         </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">0</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g0&quot;</span></span><span class="hs-special">;</span><span>   </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">1</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g1&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-183"></span><span>         </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">2</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g2&quot;</span></span><span class="hs-special">;</span><span>   </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">3</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g3&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-184"></span><span>         </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">4</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g4&quot;</span></span><span class="hs-special">;</span><span>   </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">5</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g5&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-185"></span><span>         </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">6</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g6&quot;</span></span><span class="hs-special">;</span><span>   </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">7</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%g7&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-186"></span><span>         </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">8</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o0&quot;</span></span><span class="hs-special">;</span><span>   </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">9</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o1&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-187"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">10</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o2&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">11</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o3&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-188"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">12</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o4&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">13</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o5&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-189"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">14</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o6&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">15</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%o7&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-190"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">16</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l0&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">17</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l1&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-191"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">18</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l2&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">19</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l3&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-192"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">20</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l4&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">21</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l5&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-193"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">22</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l6&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">23</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%l7&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-194"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">24</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i0&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">25</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i1&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-195"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">26</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i2&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">27</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i3&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-196"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">28</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i4&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">29</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i5&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-197"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">30</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i6&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">31</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%i7&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-198"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">32</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f0&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">33</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f1&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-199"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">34</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f2&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">35</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f3&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-200"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">36</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f4&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">37</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f5&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-201"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">38</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f6&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">39</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f7&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-202"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">40</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f8&quot;</span></span><span class="hs-special">;</span><span>  </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">41</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f9&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-203"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">42</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f10&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">43</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f11&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-204"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">44</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f12&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">45</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f13&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-205"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">46</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f14&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">47</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f15&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-206"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">48</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f16&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">49</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f17&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-207"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">50</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f18&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">51</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f19&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-208"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">52</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f20&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">53</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f21&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-209"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">54</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f22&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">55</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f23&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-210"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">56</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f24&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">57</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f25&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-211"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">58</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f26&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">59</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f27&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-212"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">60</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f28&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">61</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f29&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-213"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">62</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f30&quot;</span></span><span class="hs-special">;</span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">63</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%f31&quot;</span></span><span class="hs-special">;</span><span>
</span><span id="line-214"></span><span>        </span><span class="annot"><span class="annottext">Int
</span><span class="hs-identifier">_</span></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;very naughty sparc register&quot;</span></span><span> </span><span class="hs-special">}</span><span class="hs-special">)</span><span>
</span><span id="line-215"></span><span>
</span><span id="line-216"></span><span>
</span><span id="line-217"></span><span class="hs-comment">-- | Pretty print a format for an instruction suffix.</span><span>
</span><span id="line-218"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormat"><span class="hs-identifier hs-type">pprFormat</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Format.html#Format"><span class="hs-identifier hs-type">Format</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-219"></span><span id="pprFormat"><span class="annot"><span class="annottext">pprFormat :: Format -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormat"><span class="hs-identifier hs-var hs-var">pprFormat</span></a></span></span><span> </span><span id="local-6989586621681019317"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019317"><span class="hs-identifier hs-var">x</span></a></span></span><span>
</span><span id="line-220"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span>
</span><span id="line-221"></span><span>    </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019317"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-222"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II8"><span class="hs-identifier hs-var">II8</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;ub&quot;</span></span><span>
</span><span id="line-223"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II16"><span class="hs-identifier hs-var">II16</span></a></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;uh&quot;</span></span><span>
</span><span id="line-224"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II32"><span class="hs-identifier hs-var">II32</span></a></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-225"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II64"><span class="hs-identifier hs-var">II64</span></a></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;d&quot;</span></span><span>
</span><span id="line-226"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-227"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;d&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-228"></span><span>
</span><span id="line-229"></span><span>
</span><span id="line-230"></span><span class="hs-comment">-- | Pretty print a format for an instruction suffix.</span><span>
</span><span id="line-231"></span><span class="hs-comment">--      eg LD is 32bit on sparc, but LDD is 64 bit.</span><span>
</span><span id="line-232"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprStFormat"><span class="hs-identifier hs-type">pprStFormat</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Format.html#Format"><span class="hs-identifier hs-type">Format</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-233"></span><span id="pprStFormat"><span class="annot"><span class="annottext">pprStFormat :: Format -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprStFormat"><span class="hs-identifier hs-var hs-var">pprStFormat</span></a></span></span><span> </span><span id="local-6989586621681019309"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019309"><span class="hs-identifier hs-var">x</span></a></span></span><span>
</span><span id="line-234"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span>
</span><span id="line-235"></span><span>    </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019309"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-236"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II8"><span class="hs-identifier hs-var">II8</span></a></span><span>   </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;b&quot;</span></span><span>
</span><span id="line-237"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II16"><span class="hs-identifier hs-var">II16</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;h&quot;</span></span><span>
</span><span id="line-238"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II32"><span class="hs-identifier hs-var">II32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-239"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II64"><span class="hs-identifier hs-var">II64</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;x&quot;</span></span><span>
</span><span id="line-240"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-241"></span><span>        </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;d&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-242"></span><span>
</span><span id="line-243"></span><span>
</span><span id="line-244"></span><span>
</span><span id="line-245"></span><span class="hs-comment">-- | Pretty print a condition code.</span><span>
</span><span id="line-246"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprCond"><span class="hs-identifier hs-type">pprCond</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Cond.html#Cond"><span class="hs-identifier hs-type">Cond</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-247"></span><span id="pprCond"><span class="annot"><span class="annottext">pprCond :: Cond -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprCond"><span class="hs-identifier hs-var hs-var">pprCond</span></a></span></span><span> </span><span id="local-6989586621681019307"><span class="annot"><span class="annottext">Cond
</span><a href="#local-6989586621681019307"><span class="hs-identifier hs-var">c</span></a></span></span><span>
</span><span id="line-248"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span>
</span><span id="line-249"></span><span>    </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Cond
</span><a href="#local-6989586621681019307"><span class="hs-identifier hs-var">c</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-250"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#ALWAYS"><span class="hs-identifier hs-var">ALWAYS</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-251"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#NEVER"><span class="hs-identifier hs-var">NEVER</span></a></span><span>   </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;n&quot;</span></span><span>
</span><span id="line-252"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#GEU"><span class="hs-identifier hs-var">GEU</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;geu&quot;</span></span><span>
</span><span id="line-253"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#LU"><span class="hs-identifier hs-var">LU</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;lu&quot;</span></span><span>
</span><span id="line-254"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#EQQ"><span class="hs-identifier hs-var">EQQ</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;e&quot;</span></span><span>
</span><span id="line-255"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#GTT"><span class="hs-identifier hs-var">GTT</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;g&quot;</span></span><span>
</span><span id="line-256"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#GE"><span class="hs-identifier hs-var">GE</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;ge&quot;</span></span><span>
</span><span id="line-257"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#GU"><span class="hs-identifier hs-var">GU</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;gu&quot;</span></span><span>
</span><span id="line-258"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#LTT"><span class="hs-identifier hs-var">LTT</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;l&quot;</span></span><span>
</span><span id="line-259"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#LE"><span class="hs-identifier hs-var">LE</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;le&quot;</span></span><span>
</span><span id="line-260"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#LEU"><span class="hs-identifier hs-var">LEU</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;leu&quot;</span></span><span>
</span><span id="line-261"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#NE"><span class="hs-identifier hs-var">NE</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;ne&quot;</span></span><span>
</span><span id="line-262"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#NEG"><span class="hs-identifier hs-var">NEG</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;neg&quot;</span></span><span>
</span><span id="line-263"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#POS"><span class="hs-identifier hs-var">POS</span></a></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;pos&quot;</span></span><span>
</span><span id="line-264"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#VC"><span class="hs-identifier hs-var">VC</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;vc&quot;</span></span><span>
</span><span id="line-265"></span><span>        </span><span class="annot"><span class="annottext">Cond
</span><a href="GHC.CmmToAsm.SPARC.Cond.html#VS"><span class="hs-identifier hs-var">VS</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;vs&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-266"></span><span>
</span><span id="line-267"></span><span>
</span><span id="line-268"></span><span class="hs-comment">-- | Pretty print an address mode.</span><span>
</span><span id="line-269"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAddr"><span class="hs-identifier hs-type">pprAddr</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html#AddrMode"><span class="hs-identifier hs-type">AddrMode</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-270"></span><span id="pprAddr"><span class="annot"><span class="annottext">pprAddr :: AddrMode -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAddr"><span class="hs-identifier hs-var hs-var">pprAddr</span></a></span></span><span> </span><span id="local-6989586621681019289"><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019289"><span class="hs-identifier hs-var">am</span></a></span></span><span>
</span><span id="line-271"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019289"><span class="hs-identifier hs-var">am</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-272"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html#AddrRegReg"><span class="hs-identifier hs-type">AddrRegReg</span></a></span><span> </span><span id="local-6989586621681019287"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019287"><span class="hs-identifier hs-var">r1</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Platform.Reg.html#RegReal"><span class="hs-identifier hs-type">RegReal</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Platform.Reg.html#RealRegSingle"><span class="hs-identifier hs-type">RealRegSingle</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">0</span></span><span class="hs-special">)</span><span class="hs-special">)</span><span>
</span><span id="line-273"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019287"><span class="hs-identifier hs-var">r1</span></a></span><span>
</span><span id="line-274"></span><span>
</span><span id="line-275"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html#AddrRegReg"><span class="hs-identifier hs-type">AddrRegReg</span></a></span><span> </span><span id="local-6989586621681019286"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019286"><span class="hs-identifier hs-var">r1</span></a></span></span><span> </span><span id="local-6989586621681019285"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019285"><span class="hs-identifier hs-var">r2</span></a></span></span><span>
</span><span id="line-276"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019286"><span class="hs-identifier hs-var">r1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'+'</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019285"><span class="hs-identifier hs-var">r2</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-277"></span><span>
</span><span id="line-278"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html#AddrRegImm"><span class="hs-identifier hs-type">AddrRegImm</span></a></span><span> </span><span id="local-6989586621681019282"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019282"><span class="hs-identifier hs-var">r1</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmInt"><span class="hs-identifier hs-type">ImmInt</span></a></span><span> </span><span id="local-6989586621681019280"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019280"><span class="hs-identifier hs-var">i</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-279"></span><span>         </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019280"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Int -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">0</span></span><span>               </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019282"><span class="hs-identifier hs-var">r1</span></a></span><span>
</span><span id="line-280"></span><span>         </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Bool
forall a. Integral a =&gt; a -&gt; Bool
</span><a href="GHC.CmmToAsm.SPARC.Base.html#fits13Bits"><span class="hs-identifier hs-var">fits13Bits</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019280"><span class="hs-identifier hs-var">i</span></a></span><span class="hs-special">)</span><span>   </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
forall a b. Show a =&gt; a -&gt; b
</span><a href="GHC.CmmToAsm.SPARC.Base.html#largeOffsetError"><span class="hs-identifier hs-var">largeOffsetError</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019280"><span class="hs-identifier hs-var">i</span></a></span><span>
</span><span id="line-281"></span><span>         </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span>            </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019282"><span class="hs-identifier hs-var">r1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="#local-6989586621681019277"><span class="hs-identifier hs-var">pp_sign</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#int"><span class="hs-identifier hs-var">int</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019280"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-282"></span><span>         </span><span class="hs-keyword">where</span><span>
</span><span id="line-283"></span><span>                </span><span id="local-6989586621681019277"><span class="annot"><span class="annottext">pp_sign :: SDoc
</span><a href="#local-6989586621681019277"><span class="hs-identifier hs-var hs-var">pp_sign</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019280"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Int -&gt; Bool
forall a. Ord a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">&gt;</span></span><span> </span><span class="annot"><span class="annottext">Int
</span><span class="hs-number">0</span></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'+'</span></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-284"></span><span>
</span><span id="line-285"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html#AddrRegImm"><span class="hs-identifier hs-type">AddrRegImm</span></a></span><span> </span><span id="local-6989586621681019272"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019272"><span class="hs-identifier hs-var">r1</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmInteger"><span class="hs-identifier hs-type">ImmInteger</span></a></span><span> </span><span id="local-6989586621681019270"><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019270"><span class="hs-identifier hs-var">i</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-286"></span><span>         </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019270"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="annot"><span class="annottext">Integer -&gt; Integer -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">Integer
</span><span class="hs-number">0</span></span><span>               </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019272"><span class="hs-identifier hs-var">r1</span></a></span><span>
</span><span id="line-287"></span><span>         </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Integer -&gt; Bool
forall a. Integral a =&gt; a -&gt; Bool
</span><a href="GHC.CmmToAsm.SPARC.Base.html#fits13Bits"><span class="hs-identifier hs-var">fits13Bits</span></a></span><span> </span><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019270"><span class="hs-identifier hs-var">i</span></a></span><span class="hs-special">)</span><span>   </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Integer -&gt; SDoc
forall a b. Show a =&gt; a -&gt; b
</span><a href="GHC.CmmToAsm.SPARC.Base.html#largeOffsetError"><span class="hs-identifier hs-var">largeOffsetError</span></a></span><span> </span><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019270"><span class="hs-identifier hs-var">i</span></a></span><span>
</span><span id="line-288"></span><span>         </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span>            </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019272"><span class="hs-identifier hs-var">r1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="#local-6989586621681019269"><span class="hs-identifier hs-var">pp_sign</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Integer -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#integer"><span class="hs-identifier hs-var">integer</span></a></span><span> </span><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019270"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-289"></span><span>         </span><span class="hs-keyword">where</span><span>
</span><span id="line-290"></span><span>                </span><span id="local-6989586621681019269"><span class="annot"><span class="annottext">pp_sign :: SDoc
</span><a href="#local-6989586621681019269"><span class="hs-identifier hs-var hs-var">pp_sign</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019270"><span class="hs-identifier hs-var">i</span></a></span><span> </span><span class="annot"><span class="annottext">Integer -&gt; Integer -&gt; Bool
forall a. Ord a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">&gt;</span></span><span> </span><span class="annot"><span class="annottext">Integer
</span><span class="hs-number">0</span></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'+'</span></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-291"></span><span>
</span><span id="line-292"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.AddrMode.html#AddrRegImm"><span class="hs-identifier hs-type">AddrRegImm</span></a></span><span> </span><span id="local-6989586621681019264"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019264"><span class="hs-identifier hs-var">r1</span></a></span></span><span> </span><span id="local-6989586621681019263"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019263"><span class="hs-identifier hs-var">imm</span></a></span></span><span>
</span><span id="line-293"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019264"><span class="hs-identifier hs-var">r1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'+'</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019263"><span class="hs-identifier hs-var">imm</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-294"></span><span>
</span><span id="line-295"></span><span>
</span><span id="line-296"></span><span class="hs-comment">-- | Pretty print an immediate value.</span><span>
</span><span id="line-297"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-type">pprImm</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#Imm"><span class="hs-identifier hs-type">Imm</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-298"></span><span id="pprImm"><span class="annot"><span class="annottext">pprImm :: Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var hs-var">pprImm</span></a></span></span><span> </span><span id="local-6989586621681019262"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019262"><span class="hs-identifier hs-var">imm</span></a></span></span><span>
</span><span id="line-299"></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019262"><span class="hs-identifier hs-var">imm</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-300"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmInt"><span class="hs-identifier hs-type">ImmInt</span></a></span><span> </span><span id="local-6989586621681019261"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019261"><span class="hs-identifier hs-var">i</span></a></span></span><span>        </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#int"><span class="hs-identifier hs-var">int</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019261"><span class="hs-identifier hs-var">i</span></a></span><span>
</span><span id="line-301"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmInteger"><span class="hs-identifier hs-type">ImmInteger</span></a></span><span> </span><span id="local-6989586621681019260"><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019260"><span class="hs-identifier hs-var">i</span></a></span></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Integer -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#integer"><span class="hs-identifier hs-var">integer</span></a></span><span> </span><span class="annot"><span class="annottext">Integer
</span><a href="#local-6989586621681019260"><span class="hs-identifier hs-var">i</span></a></span><span>
</span><span id="line-302"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmCLbl"><span class="hs-identifier hs-type">ImmCLbl</span></a></span><span> </span><span id="local-6989586621681019258"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019258"><span class="hs-identifier hs-var">l</span></a></span></span><span>       </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019258"><span class="hs-identifier hs-var">l</span></a></span><span>
</span><span id="line-303"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmIndex"><span class="hs-identifier hs-type">ImmIndex</span></a></span><span> </span><span id="local-6989586621681019256"><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019256"><span class="hs-identifier hs-var">l</span></a></span></span><span> </span><span id="local-6989586621681019255"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019255"><span class="hs-identifier hs-var">i</span></a></span></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><a href="#local-6989586621681019256"><span class="hs-identifier hs-var">l</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'+'</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#int"><span class="hs-identifier hs-var">int</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019255"><span class="hs-identifier hs-var">i</span></a></span><span>
</span><span id="line-304"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmLit"><span class="hs-identifier hs-type">ImmLit</span></a></span><span> </span><span id="local-6989586621681019253"><span class="annot"><span class="annottext">SDoc
</span><a href="#local-6989586621681019253"><span class="hs-identifier hs-var">s</span></a></span></span><span>        </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="#local-6989586621681019253"><span class="hs-identifier hs-var">s</span></a></span><span>
</span><span id="line-305"></span><span>
</span><span id="line-306"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmConstantSum"><span class="hs-identifier hs-type">ImmConstantSum</span></a></span><span> </span><span id="local-6989586621681019251"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019251"><span class="hs-identifier hs-var">a</span></a></span></span><span> </span><span id="local-6989586621681019250"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019250"><span class="hs-identifier hs-var">b</span></a></span></span><span>
</span><span id="line-307"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019251"><span class="hs-identifier hs-var">a</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'+'</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019250"><span class="hs-identifier hs-var">b</span></a></span><span>
</span><span id="line-308"></span><span>
</span><span id="line-309"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmConstantDiff"><span class="hs-identifier hs-type">ImmConstantDiff</span></a></span><span> </span><span id="local-6989586621681019248"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019248"><span class="hs-identifier hs-var">a</span></a></span></span><span> </span><span id="local-6989586621681019247"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019247"><span class="hs-identifier hs-var">b</span></a></span></span><span>
</span><span id="line-310"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019248"><span class="hs-identifier hs-var">a</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'-'</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#lparen"><span class="hs-identifier hs-var">lparen</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019247"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#rparen"><span class="hs-identifier hs-var">rparen</span></a></span><span>
</span><span id="line-311"></span><span>
</span><span id="line-312"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#LO"><span class="hs-identifier hs-type">LO</span></a></span><span> </span><span id="local-6989586621681019243"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019243"><span class="hs-identifier hs-var">i</span></a></span></span><span>
</span><span id="line-313"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%lo(&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019243"><span class="hs-identifier hs-var">i</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#rparen"><span class="hs-identifier hs-var">rparen</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-314"></span><span>
</span><span id="line-315"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#HI"><span class="hs-identifier hs-type">HI</span></a></span><span> </span><span id="local-6989586621681019241"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019241"><span class="hs-identifier hs-var">i</span></a></span></span><span>
</span><span id="line-316"></span><span>         </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%hi(&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019241"><span class="hs-identifier hs-var">i</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#rparen"><span class="hs-identifier hs-var">rparen</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-317"></span><span>
</span><span id="line-318"></span><span>        </span><span class="hs-comment">-- these should have been converted to bytes and placed</span><span>
</span><span id="line-319"></span><span>        </span><span class="hs-comment">--      in the data section.</span><span>
</span><span id="line-320"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmFloat"><span class="hs-identifier hs-type">ImmFloat</span></a></span><span> </span><span class="annot"><span class="annottext">Rational
</span><span class="hs-identifier">_</span></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;naughty float immediate&quot;</span></span><span>
</span><span id="line-321"></span><span>        </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmDouble"><span class="hs-identifier hs-type">ImmDouble</span></a></span><span> </span><span class="annot"><span class="annottext">Rational
</span><span class="hs-identifier">_</span></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;naughty double immediate&quot;</span></span><span>
</span><span id="line-322"></span><span>
</span><span id="line-323"></span><span>
</span><span id="line-324"></span><span class="hs-comment">-- | Pretty print a section \/ segment header.</span><span>
</span><span id="line-325"></span><span class="hs-comment">--      On SPARC all the data sections must be at least 8 byte aligned</span><span>
</span><span id="line-326"></span><span class="hs-comment">--      incase we store doubles in them.</span><span>
</span><span id="line-327"></span><span class="hs-comment">--</span><span>
</span><span id="line-328"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprSectionAlign"><span class="hs-identifier hs-type">pprSectionAlign</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Config.html#NCGConfig"><span class="hs-identifier hs-type">NCGConfig</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.html#Section"><span class="hs-identifier hs-type">Section</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-329"></span><span id="pprSectionAlign"><span class="annot"><span class="annottext">pprSectionAlign :: NCGConfig -&gt; Section -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprSectionAlign"><span class="hs-identifier hs-var hs-var">pprSectionAlign</span></a></span></span><span> </span><span id="local-6989586621681019238"><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019238"><span class="hs-identifier hs-var">config</span></a></span></span><span> </span><span id="local-6989586621681019237"><span class="annot"><span class="annottext">sec :: Section
</span><a href="#local-6989586621681019237"><span class="hs-identifier hs-var">sec</span></a></span></span><span class="hs-glyph">@</span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.html#Section"><span class="hs-identifier hs-type">Section</span></a></span><span> </span><span id="local-6989586621681019236"><span class="annot"><span class="annottext">SectionType
</span><a href="#local-6989586621681019236"><span class="hs-identifier hs-var">seg</span></a></span></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span>
</span><span id="line-330"></span><span>    </span><span class="annot"><span class="annottext">NCGConfig -&gt; Section -&gt; SDoc
</span><a href="GHC.CmmToAsm.Ppr.html#pprSectionHeader"><span class="hs-identifier hs-var">pprSectionHeader</span></a></span><span> </span><span class="annot"><span class="annottext">NCGConfig
</span><a href="#local-6989586621681019238"><span class="hs-identifier hs-var">config</span></a></span><span> </span><span class="annot"><span class="annottext">Section
</span><a href="#local-6989586621681019237"><span class="hs-identifier hs-var">sec</span></a></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%24%24"><span class="hs-operator hs-var">$$</span></a></span><span>
</span><span id="line-331"></span><span>    </span><span class="annot"><span class="annottext">SectionType -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAlignForSection"><span class="hs-identifier hs-var">pprAlignForSection</span></a></span><span> </span><span class="annot"><span class="annottext">SectionType
</span><a href="#local-6989586621681019236"><span class="hs-identifier hs-var">seg</span></a></span><span>
</span><span id="line-332"></span><span>
</span><span id="line-333"></span><span class="hs-comment">-- | Print appropriate alignment for the given section type.</span><span>
</span><span id="line-334"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAlignForSection"><span class="hs-identifier hs-type">pprAlignForSection</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Cmm.html#SectionType"><span class="hs-identifier hs-type">SectionType</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-335"></span><span id="pprAlignForSection"><span class="annot"><span class="annottext">pprAlignForSection :: SectionType -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAlignForSection"><span class="hs-identifier hs-var hs-var">pprAlignForSection</span></a></span></span><span> </span><span id="local-6989586621681019234"><span class="annot"><span class="annottext">SectionType
</span><a href="#local-6989586621681019234"><span class="hs-identifier hs-var">seg</span></a></span></span><span> </span><span class="hs-glyph">=</span><span>
</span><span id="line-336"></span><span>    </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">SectionType
</span><a href="#local-6989586621681019234"><span class="hs-identifier hs-var">seg</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-337"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#Text"><span class="hs-identifier hs-var">Text</span></a></span><span>              </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 4&quot;</span></span><span>
</span><span id="line-338"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#Data"><span class="hs-identifier hs-var">Data</span></a></span><span>              </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 8&quot;</span></span><span>
</span><span id="line-339"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#ReadOnlyData"><span class="hs-identifier hs-var">ReadOnlyData</span></a></span><span>      </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 8&quot;</span></span><span>
</span><span id="line-340"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#RelocatableReadOnlyData"><span class="hs-identifier hs-var">RelocatableReadOnlyData</span></a></span><span>
</span><span id="line-341"></span><span>                        </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 8&quot;</span></span><span>
</span><span id="line-342"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#UninitialisedData"><span class="hs-identifier hs-var">UninitialisedData</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 8&quot;</span></span><span>
</span><span id="line-343"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#ReadOnlyData16"><span class="hs-identifier hs-var">ReadOnlyData16</span></a></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 16&quot;</span></span><span>
</span><span id="line-344"></span><span>      </span><span class="hs-comment">-- TODO: This is copied from the ReadOnlyData case, but it can likely be</span><span>
</span><span id="line-345"></span><span>      </span><span class="hs-comment">-- made more efficient.</span><span>
</span><span id="line-346"></span><span>      </span><span class="annot"><span class="annottext">SectionType
</span><a href="GHC.Cmm.html#CString"><span class="hs-identifier hs-var">CString</span></a></span><span>           </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;.align 8&quot;</span></span><span>
</span><span id="line-347"></span><span>      </span><span class="annot"><a href="GHC.Cmm.html#OtherSection"><span class="hs-identifier hs-type">OtherSection</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-identifier">_</span></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;PprMach.pprSectionHeader: unknown section&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-348"></span><span>
</span><span id="line-349"></span><span class="hs-comment">-- | Pretty print a data item.</span><span>
</span><span id="line-350"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDataItem"><span class="hs-identifier hs-type">pprDataItem</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../ghc-boot/src/GHC.Platform.html#Platform"><span class="hs-identifier hs-type">Platform</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.Expr.html#CmmLit"><span class="hs-identifier hs-type">CmmLit</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-351"></span><span id="pprDataItem"><span class="annot"><span class="annottext">pprDataItem :: Platform -&gt; CmmLit -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprDataItem"><span class="hs-identifier hs-var hs-var">pprDataItem</span></a></span></span><span> </span><span id="local-6989586621681019226"><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019226"><span class="hs-identifier hs-var">platform</span></a></span></span><span> </span><span id="local-6989586621681019225"><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019225"><span class="hs-identifier hs-var">lit</span></a></span></span><span>
</span><span id="line-352"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#vcat"><span class="hs-identifier hs-var">vcat</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Format -&gt; CmmLit -&gt; [SDoc]
</span><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">CmmType -&gt; Format
</span><a href="GHC.CmmToAsm.Format.html#cmmTypeFormat"><span class="hs-identifier hs-var">cmmTypeFormat</span></a></span><span> </span><span class="annot"><span class="annottext">(CmmType -&gt; Format) -&gt; CmmType -&gt; Format
forall a b. (a -&gt; b) -&gt; a -&gt; b
</span><a href="../../base/src/GHC.Base.html#%24"><span class="hs-operator hs-var">$</span></a></span><span> </span><span class="annot"><span class="annottext">Platform -&gt; CmmLit -&gt; CmmType
</span><a href="GHC.Cmm.Expr.html#cmmLitType"><span class="hs-identifier hs-var">cmmLitType</span></a></span><span> </span><span class="annot"><span class="annottext">Platform
</span><a href="#local-6989586621681019226"><span class="hs-identifier hs-var">platform</span></a></span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019225"><span class="hs-identifier hs-var">lit</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019225"><span class="hs-identifier hs-var">lit</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-353"></span><span>    </span><span class="hs-keyword">where</span><span>
</span><span id="line-354"></span><span>        </span><span id="local-6989586621681019221"><span class="annot"><span class="annottext">imm :: Imm
</span><a href="#local-6989586621681019221"><span class="hs-identifier hs-var hs-var">imm</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">CmmLit -&gt; Imm
</span><a href="GHC.CmmToAsm.SPARC.Imm.html#litToImm"><span class="hs-identifier hs-var">litToImm</span></a></span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><a href="#local-6989586621681019225"><span class="hs-identifier hs-var">lit</span></a></span><span>
</span><span id="line-355"></span><span>
</span><span id="line-356"></span><span>        </span><span id="local-6989586621681019224"><span class="annot"><span class="annottext">ppr_item :: Format -&gt; CmmLit -&gt; [SDoc]
</span><a href="#local-6989586621681019224"><span class="hs-identifier hs-var hs-var">ppr_item</span></a></span></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II8"><span class="hs-identifier hs-var">II8</span></a></span><span>   </span><span class="annot"><span class="annottext">CmmLit
</span><span class="hs-identifier">_</span></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">[</span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.byte\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019221"><span class="hs-identifier hs-var">imm</span></a></span><span class="hs-special">]</span><span>
</span><span id="line-357"></span><span>        </span><span class="annot"><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II32"><span class="hs-identifier hs-var">II32</span></a></span><span>  </span><span class="annot"><span class="annottext">CmmLit
</span><span class="hs-identifier">_</span></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">[</span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.long\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019221"><span class="hs-identifier hs-var">imm</span></a></span><span class="hs-special">]</span><span>
</span><span id="line-358"></span><span>
</span><span id="line-359"></span><span>        </span><span class="annot"><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span>  </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Expr.html#CmmFloat"><span class="hs-identifier hs-type">CmmFloat</span></a></span><span> </span><span id="local-6989586621681019218"><span class="annot"><span class="annottext">Rational
</span><a href="#local-6989586621681019218"><span class="hs-identifier hs-var">r</span></a></span></span><span> </span><span class="annot"><span class="annottext">Width
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-360"></span><span>         </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">let</span><span> </span><span id="local-6989586621681019215"><span class="annot"><span class="annottext">bs :: [Int]
</span><a href="#local-6989586621681019215"><span class="hs-identifier hs-var hs-var">bs</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Float -&gt; [Int]
</span><a href="GHC.CmmToAsm.Ppr.html#floatToBytes"><span class="hs-identifier hs-var">floatToBytes</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Rational -&gt; Float
forall a. Fractional a =&gt; Rational -&gt; a
</span><a href="../../base/src/GHC.Real.html#fromRational"><span class="hs-identifier hs-var">fromRational</span></a></span><span> </span><span class="annot"><span class="annottext">Rational
</span><a href="#local-6989586621681019218"><span class="hs-identifier hs-var">r</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-361"></span><span>           </span><span class="hs-keyword">in</span><span>  </span><span class="annot"><span class="annottext">(Int -&gt; SDoc) -&gt; [Int] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621681019213"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019213"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.byte\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Imm
</span><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmInt"><span class="hs-identifier hs-var">ImmInt</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019213"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">[Int]
</span><a href="#local-6989586621681019215"><span class="hs-identifier hs-var">bs</span></a></span><span>
</span><span id="line-362"></span><span>
</span><span id="line-363"></span><span>        </span><span class="annot"><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Expr.html#CmmFloat"><span class="hs-identifier hs-type">CmmFloat</span></a></span><span> </span><span id="local-6989586621681019212"><span class="annot"><span class="annottext">Rational
</span><a href="#local-6989586621681019212"><span class="hs-identifier hs-var">r</span></a></span></span><span> </span><span class="annot"><span class="annottext">Width
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-364"></span><span>         </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">let</span><span> </span><span id="local-6989586621681019209"><span class="annot"><span class="annottext">bs :: [Int]
</span><a href="#local-6989586621681019209"><span class="hs-identifier hs-var hs-var">bs</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Double -&gt; [Int]
</span><a href="GHC.CmmToAsm.Ppr.html#doubleToBytes"><span class="hs-identifier hs-var">doubleToBytes</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Rational -&gt; Double
forall a. Fractional a =&gt; Rational -&gt; a
</span><a href="../../base/src/GHC.Real.html#fromRational"><span class="hs-identifier hs-var">fromRational</span></a></span><span> </span><span class="annot"><span class="annottext">Rational
</span><a href="#local-6989586621681019212"><span class="hs-identifier hs-var">r</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-365"></span><span>           </span><span class="hs-keyword">in</span><span>  </span><span class="annot"><span class="annottext">(Int -&gt; SDoc) -&gt; [Int] -&gt; [SDoc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621681019207"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019207"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.byte\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Imm
</span><a href="GHC.CmmToAsm.SPARC.Imm.html#ImmInt"><span class="hs-identifier hs-var">ImmInt</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019207"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">[Int]
</span><a href="#local-6989586621681019209"><span class="hs-identifier hs-var">bs</span></a></span><span>
</span><span id="line-366"></span><span>
</span><span id="line-367"></span><span>        </span><span class="annot"><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II16"><span class="hs-identifier hs-var">II16</span></a></span><span>  </span><span class="annot"><span class="annottext">CmmLit
</span><span class="hs-identifier">_</span></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">[</span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.short\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019221"><span class="hs-identifier hs-var">imm</span></a></span><span class="hs-special">]</span><span>
</span><span id="line-368"></span><span>        </span><span class="annot"><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II64"><span class="hs-identifier hs-var">II64</span></a></span><span>  </span><span class="annot"><span class="annottext">CmmLit
</span><span class="hs-identifier">_</span></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">[</span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\t.quad\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019221"><span class="hs-identifier hs-var">imm</span></a></span><span class="hs-special">]</span><span>
</span><span id="line-369"></span><span>        </span><span class="annot"><a href="#local-6989586621681019224"><span class="hs-identifier hs-var">ppr_item</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><span class="hs-identifier">_</span></span><span> </span><span class="annot"><span class="annottext">CmmLit
</span><span class="hs-identifier">_</span></span><span>            </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; [SDoc]
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr.pprDataItem: no match&quot;</span></span><span>
</span><span id="line-370"></span><span>
</span><span id="line-371"></span><span>
</span><span id="line-372"></span><span class="hs-comment">-- | Pretty print an instruction.</span><span>
</span><span id="line-373"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-type">pprInstr</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#Instr"><span class="hs-identifier hs-type">Instr</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-374"></span><span>
</span><span id="line-375"></span><span class="hs-comment">-- nuke comments.</span><span>
</span><span id="line-376"></span><span id="pprInstr"><span class="annot"><span class="annottext">pprInstr :: Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var hs-var">pprInstr</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#COMMENT"><span class="hs-identifier hs-type">COMMENT</span></a></span><span> </span><span class="annot"><span class="annottext">FastString
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-377"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-378"></span><span>
</span><span id="line-379"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#DELTA"><span class="hs-identifier hs-type">DELTA</span></a></span><span> </span><span id="local-6989586621681019204"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019204"><span class="hs-identifier hs-var">d</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-380"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FastString -&gt; Instr
</span><a href="GHC.CmmToAsm.SPARC.Instr.html#COMMENT"><span class="hs-identifier hs-var">COMMENT</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; FastString
</span><a href="GHC.Data.FastString.html#mkFastString"><span class="hs-identifier hs-var">mkFastString</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tdelta = &quot;</span></span><span> </span><span class="annot"><span class="annottext">String -&gt; String -&gt; String
forall a. [a] -&gt; [a] -&gt; [a]
</span><a href="../../base/src/GHC.Base.html#%2B%2B"><span class="hs-operator hs-var">++</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; String
forall a. Show a =&gt; a -&gt; String
</span><a href="../../base/src/GHC.Show.html#show"><span class="hs-identifier hs-var">show</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019204"><span class="hs-identifier hs-var">d</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span class="hs-special">)</span><span>
</span><span id="line-381"></span><span>
</span><span id="line-382"></span><span class="hs-comment">-- Newblocks and LData should have been slurped out before producing the .s file.</span><span>
</span><span id="line-383"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#NEWBLOCK"><span class="hs-identifier hs-type">NEWBLOCK</span></a></span><span> </span><span class="annot"><span class="annottext">BlockId
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-384"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;X86.Ppr.pprInstr: NEWBLOCK&quot;</span></span><span>
</span><span id="line-385"></span><span>
</span><span id="line-386"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#LDATA"><span class="hs-identifier hs-type">LDATA</span></a></span><span> </span><span class="annot"><span class="annottext">Section
</span><span class="hs-identifier">_</span></span><span> </span><span class="annot"><span class="annottext">RawCmmStatics
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-387"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;PprMach.pprInstr: LDATA&quot;</span></span><span>
</span><span id="line-388"></span><span>
</span><span id="line-389"></span><span class="hs-comment">-- 64 bit FP loads are expanded into individual instructions in CodeGen.Expand</span><span>
</span><span id="line-390"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#LD"><span class="hs-identifier hs-type">LD</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><span class="hs-identifier">_</span></span><span> </span><span id="local-6989586621681019198"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019198"><span class="hs-identifier hs-var">reg</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-391"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#RegReal"><span class="hs-identifier hs-type">RegReal</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Platform.Reg.html#RealRegSingle"><span class="hs-identifier hs-type">RealRegSingle</span></a></span><span class="hs-special">{</span><span class="hs-special">}</span><span class="hs-special">)</span><span>     </span><span class="hs-glyph">&lt;-</span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019198"><span class="hs-identifier hs-var">reg</span></a></span><span>
</span><span id="line-392"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr: not emitting potentially misaligned LD FF64 instr&quot;</span></span><span>
</span><span id="line-393"></span><span>
</span><span id="line-394"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#LD"><span class="hs-identifier hs-type">LD</span></a></span><span> </span><span id="local-6989586621681019197"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019197"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019196"><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019196"><span class="hs-identifier hs-var">addr</span></a></span></span><span> </span><span id="local-6989586621681019195"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019195"><span class="hs-identifier hs-var">reg</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-395"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-396"></span><span>               </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tld&quot;</span></span><span class="hs-special">,</span><span>
</span><span id="line-397"></span><span>               </span><span class="annot"><span class="annottext">Format -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormat"><span class="hs-identifier hs-var">pprFormat</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019197"><span class="hs-identifier hs-var">format</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-398"></span><span>               </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-399"></span><span>               </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#lbrack"><span class="hs-identifier hs-var">lbrack</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-400"></span><span>               </span><span class="annot"><span class="annottext">AddrMode -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAddr"><span class="hs-identifier hs-var">pprAddr</span></a></span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019196"><span class="hs-identifier hs-var">addr</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-401"></span><span>               </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_rbracket_comma"><span class="hs-identifier hs-var">pp_rbracket_comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-402"></span><span>               </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019195"><span class="hs-identifier hs-var">reg</span></a></span><span>
</span><span id="line-403"></span><span>            </span><span class="hs-special">]</span><span>
</span><span id="line-404"></span><span>
</span><span id="line-405"></span><span class="hs-comment">-- 64 bit FP stores are expanded into individual instructions in CodeGen.Expand</span><span>
</span><span id="line-406"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#ST"><span class="hs-identifier hs-type">ST</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span> </span><span id="local-6989586621681019191"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019191"><span class="hs-identifier hs-var">reg</span></a></span></span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-407"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#RegReal"><span class="hs-identifier hs-type">RegReal</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Platform.Reg.html#RealRegSingle"><span class="hs-identifier hs-type">RealRegSingle</span></a></span><span class="hs-special">{</span><span class="hs-special">}</span><span class="hs-special">)</span><span> </span><span class="hs-glyph">&lt;-</span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019191"><span class="hs-identifier hs-var">reg</span></a></span><span>
</span><span id="line-408"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr: not emitting potentially misaligned ST FF64 instr&quot;</span></span><span>
</span><span id="line-409"></span><span>
</span><span id="line-410"></span><span class="hs-comment">-- no distinction is made between signed and unsigned bytes on stores for the</span><span>
</span><span id="line-411"></span><span class="hs-comment">-- Sparc opcodes (at least I cannot see any, and gas is nagging me --SOF),</span><span>
</span><span id="line-412"></span><span class="hs-comment">-- so we call a special-purpose pprFormat for ST..</span><span>
</span><span id="line-413"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#ST"><span class="hs-identifier hs-type">ST</span></a></span><span> </span><span id="local-6989586621681019190"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019190"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019189"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019189"><span class="hs-identifier hs-var">reg</span></a></span></span><span> </span><span id="local-6989586621681019188"><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019188"><span class="hs-identifier hs-var">addr</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-414"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-415"></span><span>               </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tst&quot;</span></span><span class="hs-special">,</span><span>
</span><span id="line-416"></span><span>               </span><span class="annot"><span class="annottext">Format -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprStFormat"><span class="hs-identifier hs-var">pprStFormat</span></a></span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019190"><span class="hs-identifier hs-var">format</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-417"></span><span>               </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-418"></span><span>               </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019189"><span class="hs-identifier hs-var">reg</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-419"></span><span>               </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_lbracket"><span class="hs-identifier hs-var">pp_comma_lbracket</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-420"></span><span>               </span><span class="annot"><span class="annottext">AddrMode -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAddr"><span class="hs-identifier hs-var">pprAddr</span></a></span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019188"><span class="hs-identifier hs-var">addr</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-421"></span><span>               </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#rbrack"><span class="hs-identifier hs-var">rbrack</span></a></span><span>
</span><span id="line-422"></span><span>            </span><span class="hs-special">]</span><span>
</span><span id="line-423"></span><span>
</span><span id="line-424"></span><span>
</span><span id="line-425"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#ADD"><span class="hs-identifier hs-type">ADD</span></a></span><span> </span><span id="local-6989586621681019184"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019184"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span id="local-6989586621681019183"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019183"><span class="hs-identifier hs-var">cc</span></a></span></span><span> </span><span id="local-6989586621681019182"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019182"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019181"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019181"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019180"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019180"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-426"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019184"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019183"><span class="hs-identifier hs-var">cc</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">RI -&gt; Bool
</span><a href="GHC.CmmToAsm.SPARC.Instr.html#riZero"><span class="hs-identifier hs-var">riZero</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019181"><span class="hs-identifier hs-var">ri</span></a></span><span>
</span><span id="line-427"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tmov\t&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019182"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019180"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-428"></span><span>
</span><span id="line-429"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span>
</span><span id="line-430"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019184"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;addx&quot;</span></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;add&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019183"><span class="hs-identifier hs-var">cc</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019182"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019181"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019180"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-431"></span><span>
</span><span id="line-432"></span><span>
</span><span id="line-433"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SUB"><span class="hs-identifier hs-type">SUB</span></a></span><span> </span><span id="local-6989586621681019176"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019176"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span id="local-6989586621681019175"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019175"><span class="hs-identifier hs-var">cc</span></a></span></span><span> </span><span id="local-6989586621681019174"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019174"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019173"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019173"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019172"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019172"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-434"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019176"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019175"><span class="hs-identifier hs-var">cc</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019172"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="annot"><span class="annottext">Reg -&gt; Reg -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="GHC.CmmToAsm.SPARC.Regs.html#g0"><span class="hs-identifier hs-var">g0</span></a></span><span>
</span><span id="line-435"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tcmp\t&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019174"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">RI -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRI"><span class="hs-identifier hs-var">pprRI</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019173"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-436"></span><span>
</span><span id="line-437"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019176"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019175"><span class="hs-identifier hs-var">cc</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">RI -&gt; Bool
</span><a href="GHC.CmmToAsm.SPARC.Instr.html#riZero"><span class="hs-identifier hs-var">riZero</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019173"><span class="hs-identifier hs-var">ri</span></a></span><span>
</span><span id="line-438"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tmov\t&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019174"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019172"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-439"></span><span>
</span><span id="line-440"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span>
</span><span id="line-441"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019176"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;subx&quot;</span></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;sub&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019175"><span class="hs-identifier hs-var">cc</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019174"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019173"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019172"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-442"></span><span>
</span><span id="line-443"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#AND"><span class="hs-identifier hs-type">AND</span></a></span><span>  </span><span id="local-6989586621681019168"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019168"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019167"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019167"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019166"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019166"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019165"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019165"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;and&quot;</span></span><span class="hs-special">)</span><span>  </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019168"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019167"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019166"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019165"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-444"></span><span>
</span><span id="line-445"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#ANDN"><span class="hs-identifier hs-type">ANDN</span></a></span><span> </span><span id="local-6989586621681019163"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019163"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019162"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019162"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019161"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019161"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019160"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019160"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;andn&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019163"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019162"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019161"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019160"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-446"></span><span>
</span><span id="line-447"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#OR"><span class="hs-identifier hs-type">OR</span></a></span><span> </span><span id="local-6989586621681019158"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019158"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019157"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019157"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019156"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019156"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019155"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019155"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-448"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool
</span><span class="hs-identifier hs-var">not</span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019158"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019157"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg -&gt; Reg -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="GHC.CmmToAsm.SPARC.Regs.html#g0"><span class="hs-identifier hs-var">g0</span></a></span><span>
</span><span id="line-449"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">let</span><span> </span><span id="local-6989586621681019154"><span class="annot"><span class="annottext">doit :: SDoc
</span><a href="#local-6989586621681019154"><span class="hs-identifier hs-var hs-var">doit</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tmov\t&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">RI -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRI"><span class="hs-identifier hs-var">pprRI</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019156"><span class="hs-identifier hs-var">ri</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019155"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-450"></span><span>          </span><span class="hs-keyword">in</span><span>  </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019156"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-451"></span><span>                   </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#RIReg"><span class="hs-identifier hs-type">RIReg</span></a></span><span> </span><span id="local-6989586621681019152"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019152"><span class="hs-identifier hs-var">rrr</span></a></span></span><span> </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019152"><span class="hs-identifier hs-var">rrr</span></a></span><span> </span><span class="annot"><span class="annottext">Reg -&gt; Reg -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019155"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span>
</span><span id="line-452"></span><span>                   </span><span class="annot"><span class="annottext">RI
</span><span class="hs-identifier">_</span></span><span>                       </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="#local-6989586621681019154"><span class="hs-identifier hs-var">doit</span></a></span><span>
</span><span id="line-453"></span><span>
</span><span id="line-454"></span><span>        </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span>
</span><span id="line-455"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;or&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019158"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019157"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019156"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019155"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-456"></span><span>
</span><span id="line-457"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#ORN"><span class="hs-identifier hs-type">ORN</span></a></span><span> </span><span id="local-6989586621681019150"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019150"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019149"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019149"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019148"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019148"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019147"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019147"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;orn&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019150"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019149"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019148"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019147"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-458"></span><span>
</span><span id="line-459"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#XOR"><span class="hs-identifier hs-type">XOR</span></a></span><span>  </span><span id="local-6989586621681019145"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019145"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019144"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019144"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019143"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019143"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019142"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019142"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;xor&quot;</span></span><span class="hs-special">)</span><span>  </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019145"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019144"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019143"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019142"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-460"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#XNOR"><span class="hs-identifier hs-type">XNOR</span></a></span><span> </span><span id="local-6989586621681019140"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019140"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019139"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019139"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019138"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019138"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019137"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019137"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;xnor&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019140"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019139"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019138"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019137"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-461"></span><span>
</span><span id="line-462"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SLL"><span class="hs-identifier hs-type">SLL</span></a></span><span> </span><span id="local-6989586621681019135"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019135"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019134"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019134"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019133"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019133"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>    </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;sll&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019135"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019134"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019133"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-463"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SRL"><span class="hs-identifier hs-type">SRL</span></a></span><span> </span><span id="local-6989586621681019131"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019131"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019130"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019130"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019129"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019129"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>    </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;srl&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019131"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019130"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019129"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-464"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SRA"><span class="hs-identifier hs-type">SRA</span></a></span><span> </span><span id="local-6989586621681019127"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019127"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019126"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019126"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019125"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019125"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>    </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;sra&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019127"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019126"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019125"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-465"></span><span>
</span><span id="line-466"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#RDY"><span class="hs-identifier hs-type">RDY</span></a></span><span> </span><span id="local-6989586621681019123"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019123"><span class="hs-identifier hs-var">rd</span></a></span></span><span class="hs-special">)</span><span>              </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\trd\t%y,&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019123"><span class="hs-identifier hs-var">rd</span></a></span><span>
</span><span id="line-467"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#WRY"><span class="hs-identifier hs-type">WRY</span></a></span><span> </span><span id="local-6989586621681019121"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019121"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019120"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019120"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-468"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\twr\t&quot;</span></span><span>
</span><span id="line-469"></span><span>                </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019121"><span class="hs-identifier hs-var">reg1</span></a></span><span>
</span><span id="line-470"></span><span>                </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">','</span></span><span>
</span><span id="line-471"></span><span>                </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019120"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-472"></span><span>                </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">','</span></span><span>
</span><span id="line-473"></span><span>                </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;%y&quot;</span></span><span>
</span><span id="line-474"></span><span>
</span><span id="line-475"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SMUL"><span class="hs-identifier hs-type">SMUL</span></a></span><span> </span><span id="local-6989586621681019118"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019118"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019117"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019117"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019116"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019116"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019115"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019115"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;smul&quot;</span></span><span class="hs-special">)</span><span>  </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019118"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019117"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019116"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019115"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-476"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#UMUL"><span class="hs-identifier hs-type">UMUL</span></a></span><span> </span><span id="local-6989586621681019113"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019113"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019112"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019112"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019111"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019111"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019110"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019110"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;umul&quot;</span></span><span class="hs-special">)</span><span>  </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019113"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019112"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019111"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019110"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-477"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SDIV"><span class="hs-identifier hs-type">SDIV</span></a></span><span> </span><span id="local-6989586621681019108"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019108"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019107"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019107"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019106"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019106"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019105"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019105"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;sdiv&quot;</span></span><span class="hs-special">)</span><span>  </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019108"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019107"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019106"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019105"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-478"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#UDIV"><span class="hs-identifier hs-type">UDIV</span></a></span><span> </span><span id="local-6989586621681019103"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019103"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019102"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019102"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019101"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019101"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019100"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019100"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var">pprRegRIReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;udiv&quot;</span></span><span class="hs-special">)</span><span>  </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019103"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019102"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019101"><span class="hs-identifier hs-var">ri</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019100"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-479"></span><span>
</span><span id="line-480"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#SETHI"><span class="hs-identifier hs-type">SETHI</span></a></span><span> </span><span id="local-6989586621681019098"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019098"><span class="hs-identifier hs-var">imm</span></a></span></span><span> </span><span id="local-6989586621681019097"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019097"><span class="hs-identifier hs-var">reg</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-481"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-482"></span><span>        </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tsethi\t&quot;</span></span><span class="hs-special">,</span><span>
</span><span id="line-483"></span><span>        </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019098"><span class="hs-identifier hs-var">imm</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-484"></span><span>        </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-485"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019097"><span class="hs-identifier hs-var">reg</span></a></span><span>
</span><span id="line-486"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-487"></span><span>
</span><span id="line-488"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="annot"><span class="annottext">Instr
</span><a href="GHC.CmmToAsm.SPARC.Instr.html#NOP"><span class="hs-identifier hs-var">NOP</span></a></span><span>
</span><span id="line-489"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tnop&quot;</span></span><span>
</span><span id="line-490"></span><span>
</span><span id="line-491"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FABS"><span class="hs-identifier hs-type">FABS</span></a></span><span> </span><span id="local-6989586621681019094"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019094"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019093"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019093"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019092"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019092"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-492"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-var">pprFormatRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fabs&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019094"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019093"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019092"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-493"></span><span>
</span><span id="line-494"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FADD"><span class="hs-identifier hs-type">FADD</span></a></span><span> </span><span id="local-6989586621681019089"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019089"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019088"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019088"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019087"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019087"><span class="hs-identifier hs-var">reg2</span></a></span></span><span> </span><span id="local-6989586621681019086"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019086"><span class="hs-identifier hs-var">reg3</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-495"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegRegReg"><span class="hs-identifier hs-var">pprFormatRegRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fadd&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019089"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019088"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019087"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019086"><span class="hs-identifier hs-var">reg3</span></a></span><span>
</span><span id="line-496"></span><span>
</span><span id="line-497"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FCMP"><span class="hs-identifier hs-type">FCMP</span></a></span><span> </span><span id="local-6989586621681019083"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019083"><span class="hs-identifier hs-var">e</span></a></span></span><span> </span><span id="local-6989586621681019082"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019082"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019081"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019081"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019080"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019080"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-498"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-var">pprFormatRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019083"><span class="hs-identifier hs-var">e</span></a></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fcmpe&quot;</span></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fcmp&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-499"></span><span>                          </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019082"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019081"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019080"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-500"></span><span>
</span><span id="line-501"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FDIV"><span class="hs-identifier hs-type">FDIV</span></a></span><span> </span><span id="local-6989586621681019078"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019078"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019077"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019077"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019076"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019076"><span class="hs-identifier hs-var">reg2</span></a></span></span><span> </span><span id="local-6989586621681019075"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019075"><span class="hs-identifier hs-var">reg3</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-502"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegRegReg"><span class="hs-identifier hs-var">pprFormatRegRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fdiv&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019078"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019077"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019076"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019075"><span class="hs-identifier hs-var">reg3</span></a></span><span>
</span><span id="line-503"></span><span>
</span><span id="line-504"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FMOV"><span class="hs-identifier hs-type">FMOV</span></a></span><span> </span><span id="local-6989586621681019073"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019073"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019072"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019072"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019071"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019071"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-505"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-var">pprFormatRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fmov&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019073"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019072"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019071"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-506"></span><span>
</span><span id="line-507"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FMUL"><span class="hs-identifier hs-type">FMUL</span></a></span><span> </span><span id="local-6989586621681019069"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019069"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019068"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019068"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019067"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019067"><span class="hs-identifier hs-var">reg2</span></a></span></span><span> </span><span id="local-6989586621681019066"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019066"><span class="hs-identifier hs-var">reg3</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-508"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegRegReg"><span class="hs-identifier hs-var">pprFormatRegRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fmul&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019069"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019068"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019067"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019066"><span class="hs-identifier hs-var">reg3</span></a></span><span>
</span><span id="line-509"></span><span>
</span><span id="line-510"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FNEG"><span class="hs-identifier hs-type">FNEG</span></a></span><span> </span><span id="local-6989586621681019064"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019064"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019063"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019063"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019062"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019062"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-511"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-var">pprFormatRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fneg&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019064"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019063"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019062"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-512"></span><span>
</span><span id="line-513"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FSQRT"><span class="hs-identifier hs-type">FSQRT</span></a></span><span> </span><span id="local-6989586621681019060"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019060"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019059"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019059"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019058"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019058"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-514"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-var">pprFormatRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fsqrt&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019060"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019059"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019058"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-515"></span><span>
</span><span id="line-516"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FSUB"><span class="hs-identifier hs-type">FSUB</span></a></span><span> </span><span id="local-6989586621681019056"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019056"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019055"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019055"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019054"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019054"><span class="hs-identifier hs-var">reg2</span></a></span></span><span> </span><span id="local-6989586621681019053"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019053"><span class="hs-identifier hs-var">reg3</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-517"></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegRegReg"><span class="hs-identifier hs-var">pprFormatRegRegReg</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;fsub&quot;</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019056"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019055"><span class="hs-identifier hs-var">reg1</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019054"><span class="hs-identifier hs-var">reg2</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019053"><span class="hs-identifier hs-var">reg3</span></a></span><span>
</span><span id="line-518"></span><span>
</span><span id="line-519"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#FxTOy"><span class="hs-identifier hs-type">FxTOy</span></a></span><span> </span><span id="local-6989586621681019051"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019051"><span class="hs-identifier hs-var">format1</span></a></span></span><span> </span><span id="local-6989586621681019050"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019050"><span class="hs-identifier hs-var">format2</span></a></span></span><span> </span><span id="local-6989586621681019049"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019049"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019048"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019048"><span class="hs-identifier hs-var">reg2</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-520"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-521"></span><span>        </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tf&quot;</span></span><span class="hs-special">,</span><span>
</span><span id="line-522"></span><span>        </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span>
</span><span id="line-523"></span><span>        </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019051"><span class="hs-identifier hs-var">format1</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-524"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II32"><span class="hs-identifier hs-var">II32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;ito&quot;</span></span><span>
</span><span id="line-525"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;sto&quot;</span></span><span>
</span><span id="line-526"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;dto&quot;</span></span><span>
</span><span id="line-527"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><span class="hs-identifier">_</span></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr.pprInstr.FxToY: no match&quot;</span></span><span class="hs-special">)</span><span class="hs-special">,</span><span>
</span><span id="line-528"></span><span>        </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span>
</span><span id="line-529"></span><span>        </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019050"><span class="hs-identifier hs-var">format2</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-530"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II32"><span class="hs-identifier hs-var">II32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;i\t&quot;</span></span><span>
</span><span id="line-531"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#II64"><span class="hs-identifier hs-var">II64</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;x\t&quot;</span></span><span>
</span><span id="line-532"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;s\t&quot;</span></span><span>
</span><span id="line-533"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
</span><a href="GHC.Data.FastString.html#sLit"><span class="hs-identifier hs-var">sLit</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;d\t&quot;</span></span><span>
</span><span id="line-534"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><span class="hs-identifier">_</span></span><span>     </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; PtrString
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr.pprInstr.FxToY: no match&quot;</span></span><span class="hs-special">)</span><span class="hs-special">,</span><span>
</span><span id="line-535"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019049"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019048"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-536"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-537"></span><span>
</span><span id="line-538"></span><span>
</span><span id="line-539"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#BI"><span class="hs-identifier hs-type">BI</span></a></span><span> </span><span id="local-6989586621681019046"><span class="annot"><span class="annottext">Cond
</span><a href="#local-6989586621681019046"><span class="hs-identifier hs-var">cond</span></a></span></span><span> </span><span id="local-6989586621681019045"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019045"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019044"><span class="annot"><span class="annottext">BlockId
</span><a href="#local-6989586621681019044"><span class="hs-identifier hs-var">blockid</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-540"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-541"></span><span>        </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tb&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Cond -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprCond"><span class="hs-identifier hs-var">pprCond</span></a></span><span> </span><span class="annot"><span class="annottext">Cond
</span><a href="#local-6989586621681019046"><span class="hs-identifier hs-var">cond</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-542"></span><span>        </span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019045"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_a"><span class="hs-identifier hs-var">pp_comma_a</span></a></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-543"></span><span>        </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-544"></span><span>        </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">BlockId -&gt; CLabel
</span><a href="GHC.Cmm.BlockId.html#blockLbl"><span class="hs-identifier hs-var">blockLbl</span></a></span><span> </span><span class="annot"><span class="annottext">BlockId
</span><a href="#local-6989586621681019044"><span class="hs-identifier hs-var">blockid</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-545"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-546"></span><span>
</span><span id="line-547"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#BF"><span class="hs-identifier hs-type">BF</span></a></span><span> </span><span id="local-6989586621681019041"><span class="annot"><span class="annottext">Cond
</span><a href="#local-6989586621681019041"><span class="hs-identifier hs-var">cond</span></a></span></span><span> </span><span id="local-6989586621681019040"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019040"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019039"><span class="annot"><span class="annottext">BlockId
</span><a href="#local-6989586621681019039"><span class="hs-identifier hs-var">blockid</span></a></span></span><span class="hs-special">)</span><span>
</span><span id="line-548"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-549"></span><span>        </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tfb&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Cond -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprCond"><span class="hs-identifier hs-var">pprCond</span></a></span><span> </span><span class="annot"><span class="annottext">Cond
</span><a href="#local-6989586621681019041"><span class="hs-identifier hs-var">cond</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-550"></span><span>        </span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019040"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_a"><span class="hs-identifier hs-var">pp_comma_a</span></a></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#empty"><span class="hs-identifier hs-var">empty</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-551"></span><span>        </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-552"></span><span>        </span><span class="annot"><span class="annottext">CLabel -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">BlockId -&gt; CLabel
</span><a href="GHC.Cmm.BlockId.html#blockLbl"><span class="hs-identifier hs-var">blockLbl</span></a></span><span> </span><span class="annot"><span class="annottext">BlockId
</span><a href="#local-6989586621681019039"><span class="hs-identifier hs-var">blockid</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-553"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-554"></span><span>
</span><span id="line-555"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#JMP"><span class="hs-identifier hs-type">JMP</span></a></span><span> </span><span id="local-6989586621681019037"><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019037"><span class="hs-identifier hs-var">addr</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tjmp\t&quot;</span></span><span> </span><span class="annot"><span class="annottext">SDoc -&gt; SDoc -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#%3C%3E"><span class="hs-operator hs-var">&lt;&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">AddrMode -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprAddr"><span class="hs-identifier hs-var">pprAddr</span></a></span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019037"><span class="hs-identifier hs-var">addr</span></a></span><span>
</span><span id="line-556"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#JMP_TBL"><span class="hs-identifier hs-type">JMP_TBL</span></a></span><span> </span><span id="local-6989586621681019035"><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019035"><span class="hs-identifier hs-var">op</span></a></span></span><span> </span><span class="annot"><span class="annottext">[Maybe BlockId]
</span><span class="hs-identifier">_</span></span><span> </span><span class="annot"><span class="annottext">CLabel
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Instr -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">AddrMode -&gt; Instr
</span><a href="GHC.CmmToAsm.SPARC.Instr.html#JMP"><span class="hs-identifier hs-var">JMP</span></a></span><span> </span><span class="annot"><span class="annottext">AddrMode
</span><a href="#local-6989586621681019035"><span class="hs-identifier hs-var">op</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-557"></span><span>
</span><span id="line-558"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#CALL"><span class="hs-identifier hs-type">CALL</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Either.html#Left"><span class="hs-identifier hs-type">Left</span></a></span><span> </span><span id="local-6989586621681019033"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019033"><span class="hs-identifier hs-var">imm</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621681019032"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019032"><span class="hs-identifier hs-var">n</span></a></span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-559"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tcall\t&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019033"><span class="hs-identifier hs-var">imm</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#int"><span class="hs-identifier hs-var">int</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019032"><span class="hs-identifier hs-var">n</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-560"></span><span>
</span><span id="line-561"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprInstr"><span class="hs-identifier hs-var">pprInstr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#CALL"><span class="hs-identifier hs-type">CALL</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Either.html#Right"><span class="hs-identifier hs-type">Right</span></a></span><span> </span><span id="local-6989586621681019031"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019031"><span class="hs-identifier hs-var">reg</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621681019030"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019030"><span class="hs-identifier hs-var">n</span></a></span></span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span>
</span><span id="line-562"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;\tcall\t&quot;</span></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019031"><span class="hs-identifier hs-var">reg</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">Int -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#int"><span class="hs-identifier hs-var">int</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621681019030"><span class="hs-identifier hs-var">n</span></a></span><span> </span><span class="hs-special">]</span><span>
</span><span id="line-563"></span><span>
</span><span id="line-564"></span><span>
</span><span id="line-565"></span><span class="hs-comment">-- | Pretty print a RI</span><span>
</span><span id="line-566"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRI"><span class="hs-identifier hs-type">pprRI</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#RI"><span class="hs-identifier hs-type">RI</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-567"></span><span id="pprRI"><span class="annot"><span class="annottext">pprRI :: RI -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRI"><span class="hs-identifier hs-var hs-var">pprRI</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#RIReg"><span class="hs-identifier hs-type">RIReg</span></a></span><span> </span><span id="local-6989586621681019029"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019029"><span class="hs-identifier hs-var">r</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019029"><span class="hs-identifier hs-var">r</span></a></span><span>
</span><span id="line-568"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRI"><span class="hs-identifier hs-var">pprRI</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#RIImm"><span class="hs-identifier hs-type">RIImm</span></a></span><span> </span><span id="local-6989586621681019027"><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019027"><span class="hs-identifier hs-var">r</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Imm -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprImm"><span class="hs-identifier hs-var">pprImm</span></a></span><span> </span><span class="annot"><span class="annottext">Imm
</span><a href="#local-6989586621681019027"><span class="hs-identifier hs-var">r</span></a></span><span>
</span><span id="line-569"></span><span>
</span><span id="line-570"></span><span>
</span><span id="line-571"></span><span class="hs-comment">-- | Pretty print a two reg instruction.</span><span>
</span><span id="line-572"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-type">pprFormatRegReg</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Data.FastString.html#PtrString"><span class="hs-identifier hs-type">PtrString</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Format.html#Format"><span class="hs-identifier hs-type">Format</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-573"></span><span id="pprFormatRegReg"><span class="annot"><span class="annottext">pprFormatRegReg :: PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegReg"><span class="hs-identifier hs-var hs-var">pprFormatRegReg</span></a></span></span><span> </span><span id="local-6989586621681019026"><span class="annot"><span class="annottext">PtrString
</span><a href="#local-6989586621681019026"><span class="hs-identifier hs-var">name</span></a></span></span><span> </span><span id="local-6989586621681019025"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019025"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019024"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019024"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019023"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019023"><span class="hs-identifier hs-var">reg2</span></a></span></span><span>
</span><span id="line-574"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-575"></span><span>        </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-576"></span><span>        </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span> </span><span class="annot"><span class="annottext">PtrString
</span><a href="#local-6989586621681019026"><span class="hs-identifier hs-var">name</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-577"></span><span>        </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019025"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-578"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;s\t&quot;</span></span><span>
</span><span id="line-579"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;d\t&quot;</span></span><span>
</span><span id="line-580"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><span class="hs-identifier">_</span></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr.pprFormatRegReg: no match&quot;</span></span><span class="hs-special">)</span><span class="hs-special">,</span><span>
</span><span id="line-581"></span><span>
</span><span id="line-582"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019024"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-583"></span><span>        </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-584"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019023"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-585"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-586"></span><span>
</span><span id="line-587"></span><span>
</span><span id="line-588"></span><span class="hs-comment">-- | Pretty print a three reg instruction.</span><span>
</span><span id="line-589"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegRegReg"><span class="hs-identifier hs-type">pprFormatRegRegReg</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Data.FastString.html#PtrString"><span class="hs-identifier hs-type">PtrString</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.Format.html#Format"><span class="hs-identifier hs-type">Format</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-590"></span><span id="pprFormatRegRegReg"><span class="annot"><span class="annottext">pprFormatRegRegReg :: PtrString -&gt; Format -&gt; Reg -&gt; Reg -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprFormatRegRegReg"><span class="hs-identifier hs-var hs-var">pprFormatRegRegReg</span></a></span></span><span> </span><span id="local-6989586621681019022"><span class="annot"><span class="annottext">PtrString
</span><a href="#local-6989586621681019022"><span class="hs-identifier hs-var">name</span></a></span></span><span> </span><span id="local-6989586621681019021"><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019021"><span class="hs-identifier hs-var">format</span></a></span></span><span> </span><span id="local-6989586621681019020"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019020"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019019"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019019"><span class="hs-identifier hs-var">reg2</span></a></span></span><span> </span><span id="local-6989586621681019018"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019018"><span class="hs-identifier hs-var">reg3</span></a></span></span><span>
</span><span id="line-591"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-592"></span><span>        </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-593"></span><span>        </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span> </span><span class="annot"><span class="annottext">PtrString
</span><a href="#local-6989586621681019022"><span class="hs-identifier hs-var">name</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-594"></span><span>        </span><span class="hs-special">(</span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">Format
</span><a href="#local-6989586621681019021"><span class="hs-identifier hs-var">format</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-595"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF32"><span class="hs-identifier hs-var">FF32</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;s\t&quot;</span></span><span>
</span><span id="line-596"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><a href="GHC.CmmToAsm.Format.html#FF64"><span class="hs-identifier hs-var">FF64</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;d\t&quot;</span></span><span>
</span><span id="line-597"></span><span>            </span><span class="annot"><span class="annottext">Format
</span><span class="hs-identifier">_</span></span><span>    </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
forall a. String -&gt; a
</span><a href="GHC.Utils.Panic.Plain.html#panic"><span class="hs-identifier hs-var">panic</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;SPARC.Ppr.pprFormatRegReg: no match&quot;</span></span><span class="hs-special">)</span><span class="hs-special">,</span><span>
</span><span id="line-598"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019020"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-599"></span><span>        </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-600"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019019"><span class="hs-identifier hs-var">reg2</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-601"></span><span>        </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-602"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019018"><span class="hs-identifier hs-var">reg3</span></a></span><span>
</span><span id="line-603"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-604"></span><span>
</span><span id="line-605"></span><span>
</span><span id="line-606"></span><span class="hs-comment">-- | Pretty print an instruction of two regs and a ri.</span><span>
</span><span id="line-607"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-type">pprRegRIReg</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Data.FastString.html#PtrString"><span class="hs-identifier hs-type">PtrString</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="hs-identifier hs-type">Bool</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Instr.html#RI"><span class="hs-identifier hs-type">RI</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Platform.Reg.html#Reg"><span class="hs-identifier hs-type">Reg</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-608"></span><span id="pprRegRIReg"><span class="annot"><span class="annottext">pprRegRIReg :: PtrString -&gt; Bool -&gt; Reg -&gt; RI -&gt; Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRegRIReg"><span class="hs-identifier hs-var hs-var">pprRegRIReg</span></a></span></span><span> </span><span id="local-6989586621681019017"><span class="annot"><span class="annottext">PtrString
</span><a href="#local-6989586621681019017"><span class="hs-identifier hs-var">name</span></a></span></span><span> </span><span id="local-6989586621681019016"><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019016"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span id="local-6989586621681019015"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019015"><span class="hs-identifier hs-var">reg1</span></a></span></span><span> </span><span id="local-6989586621681019014"><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019014"><span class="hs-identifier hs-var">ri</span></a></span></span><span> </span><span id="local-6989586621681019013"><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019013"><span class="hs-identifier hs-var">reg2</span></a></span></span><span>
</span><span id="line-609"></span><span>  </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[SDoc] -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#hcat"><span class="hs-identifier hs-var">hcat</span></a></span><span> </span><span class="hs-special">[</span><span>
</span><span id="line-610"></span><span>        </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-611"></span><span>        </span><span class="annot"><span class="annottext">PtrString -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ptext"><span class="hs-identifier hs-var">ptext</span></a></span><span> </span><span class="annot"><span class="annottext">PtrString
</span><a href="#local-6989586621681019017"><span class="hs-identifier hs-var">name</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-612"></span><span>        </span><span class="hs-keyword">if</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="#local-6989586621681019016"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;cc\t&quot;</span></span><span> </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">Char -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#char"><span class="hs-identifier hs-var">char</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><span class="hs-char">'\t'</span></span><span class="hs-special">,</span><span>
</span><span id="line-613"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019015"><span class="hs-identifier hs-var">reg1</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-614"></span><span>        </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-615"></span><span>        </span><span class="annot"><span class="annottext">RI -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprRI"><span class="hs-identifier hs-var">pprRI</span></a></span><span> </span><span class="annot"><span class="annottext">RI
</span><a href="#local-6989586621681019014"><span class="hs-identifier hs-var">ri</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-616"></span><span>        </span><span class="annot"><span class="annottext">SDoc
</span><a href="GHC.Utils.Outputable.html#comma"><span class="hs-identifier hs-var">comma</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-617"></span><span>        </span><span class="annot"><span class="annottext">Reg -&gt; SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pprReg"><span class="hs-identifier hs-var">pprReg</span></a></span><span> </span><span class="annot"><span class="annottext">Reg
</span><a href="#local-6989586621681019013"><span class="hs-identifier hs-var">reg2</span></a></span><span>
</span><span id="line-618"></span><span>    </span><span class="hs-special">]</span><span>
</span><span id="line-619"></span><span>
</span><span id="line-620"></span><span class="hs-comment">{-
pprRIReg :: PtrString -&gt; Bool -&gt; RI -&gt; Reg -&gt; SDoc
pprRIReg name b ri reg1
  = hcat [
        char '\t',
        ptext name,
        if b then text &quot;cc\t&quot; else char '\t',
        pprRI ri,
        comma,
        pprReg reg1
    ]
-}</span><span>
</span><span id="line-632"></span><span>
</span><span id="line-633"></span><span class="hs-comment">{-
pp_ld_lbracket :: SDoc
pp_ld_lbracket    = text &quot;\tld\t[&quot;
-}</span><span>
</span><span id="line-637"></span><span>
</span><span id="line-638"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_rbracket_comma"><span class="hs-identifier hs-type">pp_rbracket_comma</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-639"></span><span id="pp_rbracket_comma"><span class="annot"><span class="annottext">pp_rbracket_comma :: SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_rbracket_comma"><span class="hs-identifier hs-var hs-var">pp_rbracket_comma</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;],&quot;</span></span><span>
</span><span id="line-640"></span><span>
</span><span id="line-641"></span><span>
</span><span id="line-642"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_lbracket"><span class="hs-identifier hs-type">pp_comma_lbracket</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-643"></span><span id="pp_comma_lbracket"><span class="annot"><span class="annottext">pp_comma_lbracket :: SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_lbracket"><span class="hs-identifier hs-var hs-var">pp_comma_lbracket</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;,[&quot;</span></span><span>
</span><span id="line-644"></span><span>
</span><span id="line-645"></span><span>
</span><span id="line-646"></span><span class="annot"><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_a"><span class="hs-identifier hs-type">pp_comma_a</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#SDoc"><span class="hs-identifier hs-type">SDoc</span></a></span><span>
</span><span id="line-647"></span><span id="pp_comma_a"><span class="annot"><span class="annottext">pp_comma_a :: SDoc
</span><a href="GHC.CmmToAsm.SPARC.Ppr.html#pp_comma_a"><span class="hs-identifier hs-var hs-var">pp_comma_a</span></a></span></span><span>        </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#text"><span class="hs-identifier hs-var">text</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;,a&quot;</span></span><span>
</span><span id="line-648"></span></pre></body></html>